作者newvalentine (haha)
看板Database
标题[SQL ] 为何同样条件查询时间不一样?
时间Wed May 2 23:44:50 2012
最近因为工作业务上需求须要挑一些资料,因为资料有上百万笔所以有将 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
1F:推 alpe:因为 * 05/02 23:53
2F:→ newvalentine:* 全挑跟指定有关系吗? 05/02 23:54
3F:→ gname:一次叫一百个人跟一次叫二个人...当然有差啊~ 05/03 00:24
4F:推 carlcarl:拿栏位资料的多寡对速度也是很伤的 05/03 03:52
5F:推 bluepromise:如果是Count(*)和Count(column)也适用如上道理吗? 05/03 20:04
6F:推 alpe:不同DB有差, 记得有的没差, 有的有差, 所以请用 count(pk) 05/03 22:30
7F:推 ji394su33000:是roll lock 跟 all page lock的分别吗? 05/09 01:34
8F:→ ji394su33000: ↑row 05/09 01:35