我有一個包含103列和100,000多條記錄的表。有人告訴我,Oracle Data Base在很少的列(四列)和很少的記錄(約20,000個記錄)中有不好的數據,並被告知要修改數據。此外,我被給了一個查詢,我應該修改數據(壞數據)。在查詢的幫助下,我將所有不良數據導出到excel中並使用宏進行修改。用excel中的數據替換部分oracle數據庫
如何將Oracle數據庫中現有的不良數據替換爲我在excel(良好數據)中使用的數據。是否有可能使用SQL查詢修改數據庫某些部分的數據?我的意思是說,103列中有4列和100k記錄中的20k必須進行修改,而不影響Oracle數據庫中已有的良好數據。
我使用SQL開發人員和Oracle 11g
我的查詢檢索壞數據
select e.id_number
, e.gender_code
, e.pref_mail_name
, e.prefix
,e.first_name
,e.last_name
,e.spouse_name
,e.spouse_id_number
,e.pref_jnt_mail_name1
,e.pref_jnt_mail_name2
from advance.entity e
where e.person_or_org = 'P'
and ascii(e.spouse_name) <> 32
or ascii(e.spouse_id_number) <> 32"
注:另外我不改變任何主鍵或二級的關鍵數據。壞數據在其他列中。
我想你正在尋找'UPDATE'語句。 [Documentation here](http://docs.oracle.com/cd/B28359_01/server.111/b28286/statements_10008.htm#SQLRF01708)。通過Excel公式的一些工作,可以在Excel電子表格中生成所需的「UPDATE」語句,然後將這些語句複製到SQL Developer(或任何您擁有的工具)並執行它們。祝你好運。 –