我正试图从mysql数据库的json列中提取一些json编号并将其保存到double类型的另一列
我的sql语句是
update city
set Population = Info
where (
select CAST(JSON_UNQUOTE(JSON_EXTRACT(Info, '$.Population'))as DECIMAL)
);
但我不断收到此错误:
错误:3156:从第1行的“信息”列到CAST到DOUBLE的JSON值无效
“信息”列的类型为json,“人口”类型为Double
答案 0 :(得分:0)
您不能创建set Population = Info
,因为它们具有完全不同的列类型。
您是不是偶然地尝试进行简单的更新?
update city
set Population = JSON_EXTRACT(Info, '$.Population')