TSQL Select子句我有一个让我被存储在数据库中的类型列表的基本select语句:与Case语句
SELECT teType
FROM BS_TrainingEvent_Types
WHERE source = @source
FOR XML PATH ('options'), TYPE, ELEMENTS, ROOT ('types')
我的表包含一个类型列和源列。
该表中有一条记录,我需要将它包含在两个独立的源中,但我无法为其创建单独的记录。
**Table Data**
type | source
test users
test2 members
test3 admins
我需要一个case语句才能说IF source = admins also give me the type test2
。
这是否有意义,是否可以做一个基本的选择?
更新 我想出了这个临时解决办法,但我仍然认为这是一个更好的方式来处理这个问题:
DECLARE @tmp AS TABLE (
QID VARCHAR (10));
INSERT INTO @tmp (QID)
SELECT DISTINCT qid
FROM tfs_adhocpermissions;
SELECT t.QID,
emp.FirstName,
emp.LastName,
emp.NTID,
(SELECT accessKey
FROM TFS_AdhocPermissions AS p
WHERE p.QID = t.QID
FOR XML PATH ('key'), TYPE, ELEMENTS, ROOT ('keys'))
FROM @tmp AS t
LEFT OUTER JOIN
dbo.EmployeeTable AS emp
ON t.QID = emp.QID
FOR XML PATH ('data'), TYPE, ELEMENTS, ROOT ('root');
仅供参考,它是CASE *表达式*,而不是CASE *语句*。 –