看板 Database 關於我們 聯絡資訊
最近因為工作業務上需求須要挑一些資料,因為資料有上百萬筆所以有將 index 索引 的條件盡量往前塞 可是同樣條件的 SQL A: SELECT * FROM TABLE WHERE INDEX_FIELD='條件1' AND NOT_INDEX_FILED = '條件2' B: SELECT INDEX_FIELD FROM TABLE WHERE INDEX_FIELD='條件1' AND NOT_INDEX_FILED = '條件2' 上面 A 的執行時間竟然比 B 還要長?這是為啥呢? 我的環境是 Oracle 8g 然後用 PL/SQL Developer 下去 run SQL 的 不知道為啥有這樣的差異 ._.? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.240.175.214
alpe:因為 * 05/02 23:53
newvalentine:* 全挑跟指定有關係嗎? 05/02 23:54
gname:一次叫一百個人跟一次叫二個人...當然有差啊~ 05/03 00:24
carlcarl:拿欄位資料的多寡對速度也是很傷的 05/03 03:52
bluepromise:如果是Count(*)和Count(column)也適用如上道理嗎? 05/03 20:04
alpe:不同DB有差, 記得有的沒差, 有的有差, 所以請用 count(pk) 05/03 22:30
ji394su33000:是roll lock 跟 all page lock的分別嗎? 05/09 01:34
ji394su33000: ↑row 05/09 01:35