2011-04-07 73 views
2

我有超過100000行的數據集,超過100列,其中一些值爲NULL。現在我想刪除所有包含NULL值的行。有條件地刪除行

任何人都可以建議它的SQL命令嗎?

+2

請發佈您迄今爲止編寫的代碼。人們通常不喜歡只爲你寫代碼。事實上,這是一個工作描述,而不是一個問題。 – 2011-04-07 23:57:42

回答

0

使用像PHP這樣的腳本語言來檢索所有列名,然後構造您的SQL查詢。 使用純SQL可能會變得棘手。

+0

DB2,Oracle,SQL Server,PostgreSQL,MySQL,Interbase,Paradox,MS Access甚至dBase都可以更簡單地從表中獲取所有列名,而無需爲此編寫任何類型的腳本。 – rsenna 2011-04-08 01:01:07

+0

謝謝Dave,ITroubs&rsenna!我只想知道,如果我們有可能創建vba類似腳本來刪除SQL中的行。 – Beta 2011-04-08 15:45:17

+0

我不知道VBA,但如果它可能在PHP中,那麼它也應該可以在VBA中使用。 – ITroubs 2011-04-08 16:12:00

7

根據您提供的信息很少:

DELETE FROM table WHERE colA IS NULL OR colB is NULL 

進一步添加條件,要檢查每一列。

更改ORAND如果您只想刪除所有列爲NULL的行。

如果您不想手動輸入它,使用user_tab_columns上的查詢爲此生成SQL相當容易。