2011-05-03 122 views
1

我需要比較一個excel列的值與sql數據庫表中的列。 我將如何做到這一點?與SQL比較

+0

如果這是一次性交易,請複製/粘貼工具中的兩列,比如無法比較並完成。 – 2011-05-03 06:24:53

+0

@Lieven - 你想先對它們進行排序。 – 2011-05-03 07:01:17

+1

@Graphain,不*我*不會,OP可能。 ;) – 2011-05-03 18:35:33

回答

4

一種方法是導入Excel值到一個臨時SQL Server表(例如,使用SQL Server中的Import Data嚮導),然後用幾個很好的SQL數據的一個比較喜歡Red-Gate SQL Data CompareApexSQL SQL Data Diff工具兩個表進行比較在SQL Server中。

1

The solution from marc_s是優先選項,因爲您可以對數據執行SQL查詢,包括WHERE NOT IN

另一種方法是從表格中執行SELECT *(確保您的Management Studio設置爲顯示足夠的行),將其複製/粘貼到Excel旁邊的現有數據中,然後以相同的方式在Excel中對兩列進行排序。

然後,如果你希望他們是相當接近,只是在尋找一對夫婦不匹配的,(如果要區分大小寫=A1=B1=EXACT(A1,B1))上下拖動該公式中的所有行的比較式添加到第三列。當然這會在第一個錯誤之後「關閉」,這意味着要麼在這一點上將行從另一列向下移動,以便在每次錯誤之後進行補償(在該行的一列中留下「空白」條目),或者簡單地抓住一個diff工具,如下所述。

如果您期望它們顯着偏離或已經有一個方便的工具,比較/比較工具(如BeyondCompare)代替比較列將使此比較操作最容易。

+0

'B!'?你的意思是'B1'? – 2011-05-03 06:58:45

+0

@Andriy M - 是的,正確的歡呼聲。 – 2011-05-03 07:00:41