如何在 SQL Server 中使用 IN 运算符
这是表结构
Create Table Sample(Id INT,Name Varchar(50))
当我是这样的查询时,我可以获得值
Select * FROM Sample WHERE Id IN ('74','77','79','80')
当我执行上述查询时,我无法获取与该表相关的记录,因此执行此错误时出错。
DECLARE @s VARCHAR(MAX)
SET @s='74','77','79','80'
Select * FROM Sample WHERE Id IN (@s)
最佳答案
你用错了
使用如下方式
DECLARE @s VARCHAR(MAX)
DECLARE @d VARCHAR(MAX)
SET @s='74 , 77 , 79 , 80'
set @d = 'select * from arinvoice where arinvoiceid in('+@s+')'
exec (@d)
此处 IN
运算符使用整数集合而不是字符串集合..
关于sql - SQL Server中IN运算符的使用方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10241009/