字段Amout为Varchar类型的小数数值,查询语句怎么写才能直接where amount='7.9'

Felix_ZZZ Felix_ZZZ 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
小弟,遇到如下问题,望前辈指导,谢谢!

已知字段Amount为Varchar类型,amount的值为小数数值,现在想要查询所有满足amount='7.9'的记录。
小弟直接用
1. select *from sales_d where amount='7.9'会直接爆varchar冲突。
2. select *from sales_d where convert(int,amount)='7.9'还是爆varchar冲突
3. select *from sales_d where convert(int,convert(numeric(18,9),amount))='7.9'同样出错。

最后使用select *From sales_d where convert(int,cast(amount as float))>='7' and convert(int,cast(amount as float))<'7',这样语句没有爆错。。。

求大神,有没有办法可以直接找出amount转换为数值等于7.9的记录呢, 非常感谢!!!
...全文

相关推荐

评论 9
收藏 已收藏
分享
返回顶部
Felix_ZZZ
MS-SQL Server 34,876 成员 254,635 内容