我需要将$.fonts_size
json属性的值转换为float。
目前有整数值,如1
,我需要它们变成1.0
,使我的应用程序将它们视为double。
在这个例子中,json像这样:
{
"fonts_size": 1
}
应转换为:
{
"fonts_size": 1.0
}
在MariaDB中可以在SQL中做到这一点吗?
我尝试了这样的解决方案:
SELECT JSON_EXTRACT(
JSON_SET(
settings,
"$.fonts_size",
CAST(
JSON_EXTRACT(
settings,
"$.fonts_size"
)
AS FLOAT
)
),
'$.fonts_size'
)
FROM blocks WHERE JSON_TYPE(JSON_EXTRACT(settings, "$.fonts_size")) = "INTEGER"
然而,这并没有什么区别。还尝试连接".0"
,但结果是string而不是double
1条答案
按热度按时间jm81lzqq1#
这是一种将整数转换为
DECIMAL
的方法,小数点后有一位数字:DECIMAL(5,1)
表示一个共有5位数的数字,其中1位在小数点的右边。(因此,4左,1右。)