看板 Database 關於我們 聯絡資訊
請問 DELETE FROM online WHERE UNIX_TIMESTAMP(NOW()-300) > $var 只有條件一 DELETE FROM online WHERE UNIX_TIMESTAMP(NOW()-300) > $var AND id = $id 條件一 條件二 這兩個敘述,對於資料表上面的刪除效能差異很大嗎 (假設有 10000 筆資料) id 有建 index. 資料庫是 MySQL 儲存引擎若是 MyIASM 她會 lock table , InnoDB 則是 lock row 1. 若是直接 drop table 效能會有差異 2. 刪除時 MyIASM 可能佔用時間較長 (?) 我想知道,這兩句 SQL 的流程差異會有差別嗎? 資料庫的行為是先找出所有 的 條件一,再篩選出條件二 還是靠 index 找到條件二,再篩選出條件一 == 不好意思,語意有點含糊,希望能幫小弟解答 -- 凝視著,卻看不見光景。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.130.223.207 ※ 編輯: roga 來自: 220.130.223.207 (11/22 01:02)
grence:聽說..mysql有explain指令可以看執行計畫,試試看囉 11/22 13:24
roga:thanks 11/23 00:26