您好我正在編寫一個TSQL的長程序,從舊的數據(和非常髒的數據集)中抽取數據並重新格式化輸出,包括列標題以匹配新的數據集。新表和舊錶。爲了測試的目的,我每次都帶來10萬行。爲了驗證表結構和字段屬性是否相同,我的老闆要求我使用TSQL EXCEPT。我進入了我們的2008服務器,並從2008年的舊歸檔數據中提取了新表2005年的數據和數據中的數據。TSQl EXCEPT驗證
我使用的代碼如下:
SELECT * FROM #NEW_TABLE
EXCEPT
SELECT * FROM #OLD_TABLE
except語句輸出100k的所有記錄來自新表。我是否正確,這是因爲數據中沒有匹配,而不是表結構問題,因爲我沒有收到任何錯誤。
我的意思是匹配如表結構中的字段順序和字段屬性都是相同的,而不是數據本身。 – JMS49 2010-08-05 00:12:56
那完全是一個不同的查詢。您應該從sys.columns中選擇引用這兩個表,然後在這些結果上執行EXCEPT。如果列數不匹配,EXCEPT甚至不會工作,但它不能告訴你更多的東西。 – 2010-08-05 00:18:42