我想在IN
条件条件下的过程中使用多个输入。我怎样才能做到这一点?
下面是我的查询代码。
Declare @iM_ID varchar(100)
set @iM_ID='20,22,24,25'
select @iM_ID
SELECT M.M_ID,
SUM(CASE WHEN CT_ID=1
THEN 1
ELSE 0 END) AS "Secret_Coupons",
SUM(CASE WHEN CT_ID=2
THEN 1
ELSE 0 END) AS "Hot_Coupons"
FROM C_Master
INNER JOIN M_Master
ON C_Master.M_ID=M_Master.M_ID
and datediff(hh,getutcdate(),End_Datetime)>0
and M_Master.M_ID in (@iM_ID)
GROUP BY M_Master.M_ID
这样尝试
DECLARE @sql AS VARCHAR(MAX)
Declare @iM_ID varchar(100)
SET @iM_ID='20,22,24,25'
SET @sql = 'SELECT M.M_ID,SUM(CASE WHEN CT_ID=1 THEN 1 ELSE 0 END) AS "Secret_Coupons",
SUM(CASE WHEN CT_ID=2 THEN 1 ELSE 0 END) AS "Hot_Coupons"
FROM C_Master INNER JOIN M_Master ON C_Master.M_ID=M_Master.M_ID
AND datediff(hh,getutcdate(),End_Datetime)>0 AND
M_Master.M_ID IN ( ' + @iM_ID + ')
GROUP BY M_Master.M_ID'
EXECUTE @sql
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句