作法
- CREATE PROCEDURE [dbo].[usp_SelectProductByIds]
- @productIds nvarchar(max)
- AS
- BEGIN
- SET NOCOUNT ON
- DECLARE @cmd nvarchar(max)
- SET @cmd = N'SELECT * FROM Product WHERE id IN (' + @productIds + ')'
- EXEC sp_executesql @cmd
- END
簡單的說就是把本來應該要直接跑的 sql cmd 改成字串 @cmd,再把 IN 的參數拼進這份字串裡,最後利用 EXEC sp_executesql 去執行 @cmd,就可以達到效果了。
ref: StackOverFlow 、 DMXZone
沒有留言:
張貼留言