insert into select 遇到的一个坑 Truncated incorrect DOUBLE value

发布时间 2023-12-29 14:16:53作者: 20211103

INSERT INTO a( aax, aaz) (
SELECT
aax, aaz
FROM
b
WHERE
x IN ( 1,2,3 )
);

类似一个这种数据迁移的sql 如果用了where 条件请在条件上 完全遵从数据格式 如果偷懒 直接输入数字类型的 1,2,3 的话 就会报错runcated incorrect DOUBLE value ,然后排查的时候 单独执行

SELECT
aax, aaz
FROM
b
WHERE
x IN ( 1,2,3 )

一点问题都没有 但是就是一起执行的时候有问题 , 这个就是数据格式自动转换的问题,修改成

INSERT INTO a( aax, aaz) (
SELECT
aax, aaz
FROM
b
WHERE
x IN ( '1','2','3' )
);

问题解决 ;
https://blog.csdn.net/qq_31679735/article/details/132531886