求高效SQL语句

code2code 2005-03-22 01:58:05
有两个表 A 和B,这两个表中各有数十万条数据

A表是单位信息 B表存放个人信息

如今要出一个报表显示出单位名称,单位编号,总数量,数量(根据条件,例如男,年龄大于20岁,如果没有条件,那么数量和总数量应该相等)

不知道我说的清楚吗?

目前我的方法是在存储过程中向一个临时表填数据,然后通过数据窗口查这个临时表
...全文
111 点赞 收藏 8
写回复
8 条回复
lsypenghong 2005年04月04日
gz
回复 点赞
hornbilltofy 2005年04月04日
把索引建好喽
回复 点赞
nimittz 2005年04月04日
你的是什么数据库阿,还是先建索引试试!!
回复 点赞
sywen 2005年04月04日
主要是要把索引建好!
回复 点赞
freechinapi 2005年03月28日
建索引不行吗?然后察看索引
回复 点赞
code2code 2005年03月28日
楼上的 这样写效率不是很高啊
回复 点赞
liricn 2005年03月22日

select a.单位编号,a.单位名称,
(select count(1) from 人员表 b where a.单位编号=b.单位编号) 总数量,
(select count(1) from 人员表 b where a.单位编号=b.单位编号 where b.性别=1 and 年龄>20) 数量
from 单位表 a
回复 点赞
code2code 2005年03月22日
有的人可能不明白 我没有说出表之间的关系 我说的只是业务 两个表关联是单位编号

哎 还用说那么细吗 一个是单位表 一个是个人表 两个表之间的关系当然是单位编号了

单位表里存放的是各个单位的信息 一条记录一个单位 个人表里存放的是个人信息 每个人一条记录 一

个人有自己的单位所属编号

我要做一个统计报表 上面说了
单位名称,单位编号,总数量,数量(根据条件,例如男,年龄大于20岁,如果没有条件,那么数量和总数量应该相等)
具体的列都无所谓 主要是方法 我说的这些是业务 大致就这样一个情况 还有什么不懂吗?

单位编号和单位名称就不用说了 总数量是每个单位有多少人 ,数量我也说清楚了,这个报表设置了一些查询条件 例如上面给出的那样

回复 点赞
发动态
发帖子
数据库相关
创建于2007-09-28

494

社区成员

1.2w+

社区内容

PowerBuilder 数据库相关
社区公告
暂无公告