我在ADS中有一個可能包含重複記錄的大型DBF表。重複記錄由field2,field3,field5,field4,field8和field7與另一條記錄匹配的任何記錄標識。我需要識別重複記錄並刪除它們。爲了實現這一點,我試圖寫一組記錄到第二個表。即使重複記錄由六個字段標識,我需要將整個記錄(30個字段)寫入第二個表格。我曾嘗試以下代碼:從Advantage數據庫服務器10.1刪除重複的行表
insert into table2 select * from table1 where (
field2, field3, field5, field4, field8, field7
) in (
select field2, field3, field5, field4, field8, field7
from table1 where field3 not like '%FOO%' and field3 not like '%BOO%'
group by field2, field3, field5, field4, field8, field7 having count(*) > 1
)
ADS錯誤消息:ERROR IN SCRIPT:poQuery:錯誤7200:AQE錯誤:狀態= 42000; NativeError = 2115; [iAnywhere解決方案] [Advantage SQL Engine]找不到預期的詞法元素:)解析SELECT語句中的WHERE子句時出現問題。
任何和所有的幫助表示讚賞。
哇。這甚至與任何方言中的正確SQL語法都差不多。 :-)你可以發佈一些示例數據(根據你需要實際匹配的列)?另外,在嘗試INSERT之前,只要能夠選擇行即可。當你得到這個工作時,*然後*弄清楚如何將它們插入到另一個表中。 –