存储过程,@Price1 float 类型
CAST( SUBSTRING(厂商指导价,0,LEN(厂商指导价)) as float)>='+@Price1 出错“从数据类型 varchar 转换为 float 时出错”。
改成
CAST( SUBSTRING(厂商指导价,0,LEN(厂商指导价)) as float)>='+ltrim(@Price1)
调了半天,网上看到“数值类型和字符类型相加, 字符类型默认隐式转换成数值类型进行计算, 加上ltrim()是将@value显式地转换成字符型相加”,下次记住了!