【发布时间】:2011-10-08 06:44:54
【问题描述】:
问题:
如何做到这一点:
DECLARE @StateUID varchar(max)
SET @StateUID = 'E8812237-2F3B-445E-8EEF-020E0B6F6A53, 66E57225-642F-45B5-8E5D-070F2D1CF99D, 751C615B-EB9C-4D25-955D-0E0EB3CD05A2'
SELECT StateFullName, StateAbbrv, StateID
FROM tblStates
WHERE StateUID IN ( @StateID )
如下所示执行 string.join 也无济于事:
SET @StateUID = '''E8812237-2F3B-445E-8EEF-020E0B6F6A53'', ''66E57225-642F-45B5-8E5D-070F2D1CF99D'', ''751C615B-EB9C-4D25-955D-0E0EB3CD05A2'''
我现在已将它移到动态 SQL 中,它可以在其中工作。
但这非常容易出错,烦人且耗时,所以我想问一下是否有任何非疯狂的方法(没有临时表、函数等)?
【问题讨论】:
标签: sql sql-server sql-server-2005 tsql reporting-services