1. 背景
查询sql时,出现报错:Truncated incorrect DOUBLE value: ‘111-7357916-9889033’
2. 问题可能原因
2.1 数据类型不匹配
可能错误地将一个本应作为字符串处理的列或值用于了需要数值类型的计算或比较。检查SQL语句,确保数值类型正确。
2.2. 错误的转换操作
需要对这个字符串进行某种数值转换,那么首先需要确认这个字符串是否能合理转换为数值。对于像’114-0516964-2761842’这样的字符串。
2.3.使用正确的函数处理字符串
如果这个字符串实际上代表的是需要分割或解析的数值,考虑使用字符串函数(如SUBSTRING、REPLACE等)来正确提取或处理这部分数据,而不是直接尝试将其转换为DOUBLE。
2.4. 检查SQL语句中的字段或变量
确保在比较或计算时,没有无意中将字符串类型的字段与数值类型的字段进行了错误的操作。
3. 最终解决办法
使用查询语句的时候,并没有将111-7357916-9889033,用 ’‘ ,导致sql 不知道是 字符串类型。
加上 ’‘ 就行了。