我的查询是很复杂的SQL多表连接。我已经做成视图。查询100万条数据大概要花费20秒我现在就有一个问题,如果每次分页查询的时候,都是用这个很耗时的视图,那每次都要经过20秒的查询。这样效率好像不是很高。大家有没有什么比较好的解决方案阿!
解决方案 »
- 开发数据库表,结构更新,怎么样让客户机更新?
- 不显示删除回复显示所有回复显示星级回复显示得分回复 SQL2008 Integration services服务报错问题.在线等
- sql查询
- 本周的星期一的问题
- 求一问题解决方案
- sql查询的问题
- 如何从根本上解决SQL数据库日志已满的问题?
- 从备份设备中还原数据库出了问题
- 請教SQL版的老鳥們~~~~~~~~~~~~~~~~~~~~~~~~!!!!!!!!!!!!!!!!!!!!!!!!!!
- 这种程序是怎么实现的?居然能突破微软的限制 收集到微软禁止的命令?
- SQL按数据表实际存储位置的行号删除行,怎么做?
- sql2000在2003群集基础上的安装问题
A表
(
ID, //ID
trade //交易代码 其中可选 1,2
)
现在我要获取如下样式
ID 代号为1交易量总量 代码为1的交易比率 代码为2的交易总量 代码为2的交易比率代码1的交易比率=代码1的交易总量/总的交易总量
像这样的一个东西,SQL该怎么写比较高效呢。
我写的好像不是很高效。 select a.ID ,b.tradecount ,b.tradecount/a.tradecount,c.tradecount ,c.tradecount /a.tradecount from (select id,count(trade) as tradecount from A group by id)a ,(select id,count(trade) as tradecount from A where trade=1 group by id)b, ( select id,count(trade) as tradecount from A group by id)c where a.id=b.id and a.id=c.id
发现行转列的效果不怎么好,统计同一个视图。用我上面的方法,才耗时9秒,用行转列以后,查询需要20秒。