select name, sum(kbytes) as totalbyte from tablename where substr(begintime, 9, 6) >= '180000' and substr(endtime, 9, 6) <= '200000' group by name;tablename表每条记录大约50多个字段,有2万个用户,每个用户有100条记录。
begintime和endtime是yyyymmddHHMMSS格式。取时分秒作为比较区间。这两个没有索引。
如何提高查询效率。
begintime和endtime是yyyymmddHHMMSS格式。取时分秒作为比较区间。这两个没有索引。
如何提高查询效率。
解决方案 »
- C#在64位系统中连接32位ODBC的问题
- 推荐些ORACLE方面的书
- 安装了oracle10g 后 Toad 提示oracle92的oci.dll不存在
- oracle 定時執行存儲過程 , jobs
- 如何找到数据库中运行过的SQL?
- 如何得到递增的序号?
- 哪位兄弟有《ORACLE8 PL/SQL程序设计》书中所提的在线代码?
- 我想统计一下,2004-1-1 到 2004-2-3 每天的人数,sql语句怎么写??
- 让相同字符重复出现指定次数的函数是什么?
- 请教如何用pb7.0查询oracle8.1.6数据库,这里先谢谢了!
- 求救!关于oracle job 不定时执行。急等!
- 超难的Sql语句,要崩溃了
根据你的条件
substr(begintime, 9, 6) >= '180000' and substr(endtime, 9, 6) <= '200000'
做400W次substr操作和400W次判断操作,
效率明显低下
不建议在判断语句中对表数据进行额外操作