作者diamondking (迷惘)
看板Database
標題Re: [SQL ] 如何刪除上百筆的資料?
時間Wed Mar 12 22:50:56 2008
※ 引述《LPH66 (IWH68S0XZ8M89)》之銘言:
: ※ 引述《Xphenomenon (啦 )》之銘言:
: : 假設我有一百筆想要刪除的資料,而我知道他們的欄位,我是否可以
: : 將他們存在某一個檔案裡面,然後透過 SQL 的語法一一將他們刪除呢?
: : 例如:
: : 序號.txt 檔案
: : 466
: : 789
: : 316
: : ...
: : ...
: : ...
: : 649
: : 777
: : 334
: : 以上序號.txt 檔案裡有各筆紀錄的欄位資料,我想要透過 SQL 語法將此
: : 檔案讀入,進而分別刪除各筆資料,請問有辦法做到嗎?
: : 謝謝各位大大的回答 :)
: 直覺想到的做法就是用別的語言讀檔建立出
: DELETE FROM `table` WHERE (`seqno`=466 OR `seqno`=789 OR ... OR `seqno`=334)
: 這樣的字串 (這用個迴圈即可) 然後丟給SQL
其實…有一個最簡單的方法,不需要寫程式讀檔,學會後非常好用…
就是將你的序號欄,貼進excel中。
再下一個欄位,用concatenate函式,串成sql指令:
=CONCATENATE("delete table where sno='",A1,"';")
(最後面記得加分號)
最後複製整欄你串好的sql指令,貼入你的資料庫軟體裡,並在頭尾加begin及end:
begin
整個B欄(就是excel裡串好的sql欄)
end;
就完成啦。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.166.153.90
推 PsMonkey:這篇... 該不該 m 阿.... Orz 03/12 23:04
推 Xphenomenon:也不失是一個好辦法 :D 大感謝~ 03/13 00:02
推 grence:但是要裝office..orz 03/13 00:41
推 dinos:可以用 openoffice.org portable 03/13 00:51
推 gargamel:這算是加工的好方法, 但若是長期固定要做的工作呢? 03/13 10:57
推 sss2500:好方法!!! 03/15 12:51