2012-07-05 92 views
0

我有一個MS訪問MDB文件是這樣的:刪除的MS Access類似的條目

表主營:

int recordID 
int status 
int placement 
bool @private 
string category 
string note 
string description 
string dueDate 
bool completed 
int priority 
byte[] blob 
bool repeatOnCompleteDate 
string completeDate 
bool alarmSet 
string alarmTime 
int alarmAdvance 
string repeatStartDate 
string repeatInfo 

我想刪除重複項,其中描述+值得注意的是相同的,所以只一個具有相同描述+註釋內容的條目仍然存在。如果有兩個或兩個以上的重複項,其中一些項的類別爲0(注意它是一個字符串),請刪除它而不是類別不爲零的項目。 Fi。

Fi。

Desc - Note - Cat 
Hello - Test - 0 
Hello - no - 3 
Hello - Test - 0 
Hello - Test - 4 
Hello - Test - 0 

然後一個單一的說明你好與筆記測試和類別4應該保持。

我發現

delete from MyTable 
where uniqueField not in 
(select min(uniqueField) from MyTable T2 
where T2.dupField=MyTable.dupField) 

它轉化爲

delete from Main where Category not in (select min(Category) from Main T2 where T2.Description=Main.Description) 

,但不起作用。

你推薦哪個MSACCESS SQL命令?

+0

如何在Microsoft Access表中有一個字節數組列? – JMK 2012-07-06 15:13:06

回答

0

您可能會看到有多少個網絡資源可以看到herehere。你也可以通過查詢來做到這一點,如

DELETE 
FROM MyTable 
WHERE ID NOT IN 
(
SELECT MAX(ID) 
FROM MyTable 
GROUP BY DuplicateColumn1, DuplicateColumn2, DuplicateColumn3)