时间小数的sql 条件筛选时遇到的报错

如下图,

sql 选择大约10小时的,但是筛选不出来,如何写?

字段是计算完成存储在sql server 数据库里面的,类型是nvarchar。

如果小时数条件添加“”,就会提示

Err] 22018 - [SQL Server]在将 nvarchar 值 '9.2' 转换成数据类型 int 时失败。

应该如何写SQL 语句?求解,谢谢!

小时数筛选.JPG


转换不了


小时数筛选2.JPG


FineReport fine5 发布于 2020-3-30 17:55 (编辑于 2020-3-30 18:45)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
zsh331Lv8专家互助
发布于2020-3-30 18:06(编辑于 2020-3-31 09:55)

image.png

select * from tabname
where 
(
[整机状态] ='已售' 
or 二手车 ='是' 
or [整机状态描述] in ('a','b','c')
) 
and cast([工作小时数] as decimal(10,2)) > 10




  • fine5 fine5(提问者) 还是不行
    2020-03-30 18:45 
  • zsh331 zsh331 回复 fine5(提问者) and 和 or 的优先级你可了解?
    2020-03-31 09:51 
最佳回答
0
指间沙Lv6中级互助
发布于2020-3-31 09:32

cast(工作小时 as numeric(12,2))

  • 3关注人数
  • 541浏览人数
  • 最后回答于:2020-3-31 09:55
    请选择关闭问题的原因
    确定 取消
    返回顶部