Mysql json数据类型

Mysql json数据类型,mysql,json,Mysql,Json,我试图从mysql数据库中的一个json列中提取一些json编号,并将它们保存到另一个double类型的列中 我的sql语句是 update city set Population = Info where ( select CAST(JSON_UNQUOTE(JSON_EXTRACT(Info, '$.Population'))as DECIMAL) ); 但我一直在犯这样的错误: 错误:3156:第1行的列信息转换为DOUBLE的JSON值无效 Info列的类型为json,填充的

我试图从mysql数据库中的一个json列中提取一些json编号,并将它们保存到另一个double类型的列中

我的sql语句是

update city
set Population = Info
where (
    select CAST(JSON_UNQUOTE(JSON_EXTRACT(Info, '$.Population'))as DECIMAL)
); 
但我一直在犯这样的错误:

错误:3156:第1行的列信息转换为DOUBLE的JSON值无效

Info列的类型为json,填充的类型为Double


您不能使
设置人口=Info
,它们有完全不同的列类型

你只是想做一个简单的更新吗

update city
set Population = JSON_EXTRACT(Info, '$.Population')

很高兴这有帮助。老实说,我无法理解
where
子句的预期用途。您好,如何使用python脚本对mysql数据库执行此更新,然后显示结果