我有 'param1, param2, parma3'
来自 SSRS 到存储过程作为 varchar
参数:我需要在查询中使用它 IN
但需要更改其格式首先像这样:
select *
from table1
where col1 in('param1', 'param2', 'param3')
在不创建函数和参数表的情况下重新格式化参数的最佳方法是什么?
原文由 Mikhail Sokolov 发布,翻译遵循 CC BY-SA 4.0 许可协议
我有 'param1, param2, parma3'
来自 SSRS 到存储过程作为 varchar
参数:我需要在查询中使用它 IN
但需要更改其格式首先像这样:
select *
from table1
where col1 in('param1', 'param2', 'param3')
在不创建函数和参数表的情况下重新格式化参数的最佳方法是什么?
原文由 Mikhail Sokolov 发布,翻译遵循 CC BY-SA 4.0 许可协议
DECLARE @params varchar(max) = '1,2,3,4'
SELECT * FROM table2 WHERE colId IN (SELECT value FROM SPLIT(@params,','))
根据 id 我们可以找到。
原文由 Bapuji Behera 发布,翻译遵循 CC BY-SA 4.0 许可协议
1 回答2.4k 阅读✓ 已解决
1 回答2.4k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
420 阅读
试试这个,只需要在@params 字符串的开头和结尾添加逗号。
SQL 小提琴