(1)SELECT A.*, (SELECT COUNT(C.ID) FROM C WHERE C.ID = A.ID) AS CONT1
FROM A
ORDER BY A.JKRQ第(1)句在plsql上执行,显示时间是3.8s;
(2)SELECT A.*
FROM A
ORDER BY A.JKRQ如果是只执行(2)的话,只要0.15s;
(3)SELECT A.*, (SELECT COUNT(C.ID) FROM C WHERE C.ID = A.ID) AS CONT1
FROM A
执行第(3)句的话是0.2s。也就是说,如果只查询A表并排序和只做一个外表count不排序的时间都不多,但是2者合并起来的话,查询就慢了,(jkrq在A表上建有索引)。
那这第(1)个语句该怎么优化呢?
FROM A
ORDER BY A.JKRQ第(1)句在plsql上执行,显示时间是3.8s;
(2)SELECT A.*
FROM A
ORDER BY A.JKRQ如果是只执行(2)的话,只要0.15s;
(3)SELECT A.*, (SELECT COUNT(C.ID) FROM C WHERE C.ID = A.ID) AS CONT1
FROM A
执行第(3)句的话是0.2s。也就是说,如果只查询A表并排序和只做一个外表count不排序的时间都不多,但是2者合并起来的话,查询就慢了,(jkrq在A表上建有索引)。
那这第(1)个语句该怎么优化呢?
解决方案 »
- Oracle的几个概念:数据库名,全局数据库名,SID,实例,命名空间,schema
- 每天规定某个时间自动执行过程 oracle (问了几次都没解决到)
- 这种写法有没有其它要注意的:update id set (a,b,c)=(select a,b,c from ida where ida.id=id.id) where ……;
- 求助,关于互斥的问题。
- sql里的 any exist in all效率比较 按照效率比较 一般情况下
- 求写一个select语句,检索出表的列名
- SELECT的时候如何把两个字段拼在一起?
- imp导入
- 急:db2的一个问题
- 想学Oracle,要怎么学呢,会有什么困难吗
- 有挑战性的SQL语句难题,各位试试,谢谢。
- 求一sql语句
FROM A, (select id, count(id) as total from c group by id) B
where A.id = B.id
ORDER BY A.JKRQ
FROM A
ORDER BY A.JKRQ