1
我有一張表列出耗材及其庫存部門...一個供應可以有多個庫存部門,因此它們將具有相同供應但具有不同部門的多個行(有些具有多個其他不)我有一個腳本來選擇我不想刪除的所有耗材。刪除SELECT語句未選擇的所有行
SELECT supply_num,
Min(tisclient_num) AS tisclient_num,
Min(invdept_num) AS invdept_num,
Min(usage_freq) AS usage_freq,
Min(qty_on_hand) AS qty_on_hand,
Min(min_level) AS min,
Min(max_level) AS max,
Min(primary_supply_location_num) AS location,
Min(par_level) AS par
FROM mm_supply_tisclient_invdept
GROUP BY supply_num;
如何刪除此表中未選中的所有內容?
您可以使用您編寫的查詢作爲子查詢並使用NOT IN –
從您的表格中刪除所有那些「MIN」在那裏 - 不能保證它們中的任何一個或全部來自一個原始行。因此,這不僅僅是選擇性刪除的問題,而且可能是UPDATE和DELETE的組合 - 您可能希望在其他位置轉儲此數據,清除表格,然後重新導入此數據,如果它的意圖是該表的完整行。 –
我認爲傑克是正確的;然而考慮到上面的查詢返回多列,不會存在更合適嗎?我不認爲你可以按照原樣對查詢做一個NOT IN;它應該返回一個錯誤。 –