我正在使用SQL-Server 2005 Standard。
我的Users表包含以下列:
userID(int),
userImage(varchar),
userText(varchar),
userLastVisit(smalldatetime),
isActivated (bit),
userHobby1 (bit),
.....
userHobby10 (bit)
userCharacteristic1 (bit),
.....
userCharacteristic10 (bit)
我做了6个查询来选择
现在我需要获得的是具有需要告知的操作的用户列表。
例如,userID 2004没有图像,也没有单一的爱好。每个用户只应在列表中出现一次,并且需要完成所有操作。
提前致谢。
答案 0 :(得分:2)
尝试字符串连接和CASE WHEN:
SELECT UserID,
CASE WHEN UserImage IS NULL THEN 'no image.' ELSE '' END +
CASE WHEN UserText IS NULL THEN 'no text.' ELSE '' END +
... -- more CASE WHEN conditions
AS Info
WHERE (UserImage IS NULL)
OR (UserText IS NULL)
... -- OR same conditions as in CASE WHEN clauses