0

我正在尝试应用我的脚本的 where 子句

set ansi_nulls off

select
    Name, Count(Distinct [Document Name])
from 
    dbo.timeless
where 
    origin in ('2', 'I', 'E')
    and [svs check] IN ('0', '.', 'NO', 'OK', '#N/A')

然后我得到错误

消息 8114,级别 16,状态 5,第 3
行将数据类型 varchar 转换为浮点数时出错

当我注释掉时[svs check],一切都很好。所以问题出在[svs check]. 请帮忙。

4

1 回答 1

0

我猜dbo.timeless.svscheck是 float 类型,你不能将它与字符串文字进行比较。

我建议首先使用将其转换为 varchar,CAST(svs as VARCHAR(10))尽管我怀疑如果它真的是浮动的,你的 where 子句是否会起作用,因为你正在对照字符串文字检查它。

于 2017-08-30T19:10:35.197 回答