设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 900|回复: 6
打印 上一主题 下一主题

[其它] 求SQL语句

[复制链接]
跳转到指定楼层
1#
发表于 2004-2-10 17:00:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
家族       姓名    性别    年龄    存款
WWW      A        1      42     1000
WWW      B        1      89      800
WWW      C        1      31     1200
WWW      D        2      37      500
WWW      E        2      56      200
WWW      F        1      45     1900

这样一组数据。

如果想得到这样的查询结果,只有一条记录

家族       年龄    存款   男    女
WWW     **       **     *      *

其中,年龄、存款是上面年龄数据的求和,男、女分别是家族中男、女的人数

这个SQL语句该如何写呢?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅

点击这里给我发消息

2#
发表于 2004-2-10 17:10:00 | 只看该作者
设这个表为TABLE1,做个合计查询就行了。
SELECT Table1.家族, Table1.性别, Sum(Table1.年龄) AS 年龄之Sum, Sum(Table1.存款) AS 存款之Sum
FROM Table1
GROUP BY Table1.家族, Table1.性别;
3#
 楼主| 发表于 2004-2-10 17:14:00 | 只看该作者
如果按您所说的,男、女的人数并没有被统计出来啊!!这里才是关键啊

点击这里给我发消息

4#
发表于 2004-2-10 17:26:00 | 只看该作者
对不起,刚才没注意看。有点难度
5#
发表于 2004-2-10 18:45:00 | 只看该作者
设表名为 test,
SELECT 家族,sum(存款) as 存款汇总,sum(年龄) as 年龄汇总,count(iif(性别=2,null,性别)) as 男,count(iif(性别=1,null,性别)) as 女 from test group by 家族
如果是 sql,你可能需要使用 case 语句代替 iif函数.
另外,在 access 中,你还可以使用 dcount 实现这个查询.

点击这里给我发消息

6#
发表于 2004-2-10 18:50:00 | 只看该作者
以下是引用Roadbeg在2004-2-10 10:45:29的发言:
设表名为 test,
SELECT 家族,sum(存款) as 存款汇总,sum(年龄) as 年龄汇总,count(iif(性别=2,null,性别)) as 男,count(iif(性别=1,null,性别)) as 女 from test group by 家族
如果是 sql,你可能需要使用 case 语句代替 iif函数.
另外,在 access 中,你还可以使用 dcount 实现这个查询.


好!
我的思路一时还没转过来,比老兄你差远了!
7#
发表于 2004-2-10 18:57:00 | 只看该作者
郑兄过谦了.
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-11-16 12:47 , Processed in 0.087864 second(s), 30 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表