SQL Server在多列中测试1个值

时间:2019-02-20 16:51:38

标签: sql-server

我正在测试一个表,并想找出该表的10列(整数字段)是否等于999。可以使用ANY或IN子句吗?

2 个答案:

答案 0 :(得分:2)

完全是猜测,这是伪SQL,但是

SELECT {Columns}
FROM {YourTable}
WHERE '999' IN ({First Column},{Second Column},{Third Column},...,{Tenth Column});

答案 1 :(得分:0)

测试此内容的唯一方法是这样的:

select * from table1 where i1=999 and i1=i2 and i2=i3 and i3=i4 and i4=i5 and i5=16 and i6=i7 and i7=i8 and i8=i9; 

其中iX是列名。这将返回与所有9列的所有值都匹配的行。

TSQL是各种SQL标准的MS实现。