1
我有表名和表...如果表爲空,則選擇表的名稱
我只需要選擇那些空的表。
爲此,我試着寫CURSOR。
DECLARE @Footprint VARCHAR(200)
DECLARE @query VARCHAR(200)
DECLARE MY_CURSOR CURSOR
LOCAL STATIC READ_ONLY FORWARD_ONLY
FOR
SELECT '[' + [SchemaName] + '].[FootprintBuildState]'
FROM [dbo].[vwAgencySchemas]
OPEN MY_CURSOR
FETCH NEXT FROM MY_CURSOR INTO @Footprint
WHILE @@FETCH_STATUS = 0
BEGIN
--CHECK IF Table IS EMPTY (UNCORRECT)
SET @query = 'SELECT ' + @Footprint + ' FROM ' + @Footprint + ' WHERE NOT EXISTS (SELECT * FROM ' + @Footprint+ ') '
EXEC (@query)
FETCH NEXT FROM MY_CURSOR INTO @Footprint
END
CLOSE MY_CURSOR
DEALLOCATE MY_CURSOR
這是我,但我不能寫正確的查詢選擇空表的名稱
我得到錯誤
消息105,級別15,狀態1,行1
字符串'_test12345678910111213141'後面未加上引號。Msg 102,Level 15,State 1,Line 1
'_test12345678910111213141'附近的語法不正確。
@demo:** **爲什麼'HAVING?!?! '應該只應用於**使用SUM,COUNT,AVG等的聚合列 - 我的列沒有使用聚合,所以** no **,不需要'HAVING' ... –