我有我使用來獲取其具有設置爲如NULL
或''
以下列中的至少一個記錄其下面的查詢:SQL得到它們是空字段/空對返回的每條記錄
- MainImage
- 摘要
說明
DECLARE @missingFields varchar(100) SET @missingFields = '' SELECT c.[UnitReference] as 'UnitRef', t.[NodeName] as 'Property', @missingFields as 'Field/s missing' FROM [DetailPage] d INNER JOIN [CRM] c ON d.ItemID = c.ItemID INNER JOIN [Tree] t ON d.[ID] = t.[ID] WHERE (ISNULL(d.MainImage, '') = '' OR ISNULL(d.Summary,'') = '' OR ISNULL(d.[Description],'') = '') AND c.[IsListed] = 1 AND c.[IsMarketed] = 1
這會返回我想要的數據,但是我還需要建立一個字符串,列出返回的記錄中哪些列爲空或空的列。 "Main Image is empty, Description is empty"
當記錄有空時MainImage
和Description
列。
我已經試過:
@missingFields = CASE WHEN ISNULL(MainImage, '') = '' THEN 'Main image is null' ELSE '' END -- etc...
但我不能與數據檢索操作包括這一點。我會如何去做這件事?
其中一個字段總是空嗎?也可以多個字段爲空? – scsimon
爲什麼需要一個變量?你不能只用案例陳述嗎?你想要最多3種不同的狀態嗎?例如'case when isnull(d.mainimage,'')=''then'Main Image is Null'end &case when isnull(d.Description,'')=''then'Description is Null'end as [領域失蹤]'? – xQbert
字段不保證爲空。對於記錄來說,多個字段可以爲空。 – DGibbs