sql统计查询

yzb123 2007-12-30 02:07:37
有3个表:职工(职工号,姓名,年龄,性别)职工号为主码
社会团体(编号,名称,负责人,活动地点)编号为主码;外码为负责人,被参照表为职工表,对应职工号
参加(职工号,编号,参加日期)职工号和编号为主码;职工号和编号为外码

求:参加人数最多的社会团体的名称和参加人数?(用SQL语句怎么表达?)
...全文
270 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
人鱼传说 2007-12-30
  • 打赏
  • 举报
回复
背着灵魂漫步说的是对的,如果是我写的话,我会像以下这样写

select a.名称,b.人数 from 社会团体 a,
(select 编号,count(*) '人数' from 参加 group by 编号) b
where a.编号=b.编号

原来count(1)和count(*)的效果是一样,学习了
yzb123 2007-12-30
  • 打赏
  • 举报
回复
题目要求是 求最大的那个社团以及人数。你给的代码是求出了 所有的社团名称以及它的人数。
麻烦你 给我再补充下!谢谢
pt1314917 2007-12-30
  • 打赏
  • 举报
回复
为结果集或者表取的别名
yzb123 2007-12-30
  • 打赏
  • 举报
回复
谢谢
能运行了。作为菜鸟还想请问下 这个a 和 b 是什么意思?
pt1314917 2007-12-30
  • 打赏
  • 举报
回复



cnt是人数

select 名称,人数 from 社会团体 a,
(select 编号,count(1)'人数' from 参加 group by 编号) b
where a.编号=b.编号


smancn 2007-12-30
  • 打赏
  • 举报
回复
Select   a.名称.b.人数   from   社会团体   a   inner   Join   (Select   top   1   编号,count(编号)   as   人数   from   参加   group   by   编号 order by 人数   desc)   b   on   a.编号=b.编号 

yzb123 2007-12-30
  • 打赏
  • 举报
回复
一楼的朋友!
那个cnt是??????
smancn 2007-12-30
  • 打赏
  • 举报
回复
Select a.名称.b.人数 from 社会团体 a inner Join (Select top 1 编号,count(编号) as 人数 from 参加 group by 人数 desc) b on a.编号=b.编号

没测试
pt1314917 2007-12-30
  • 打赏
  • 举报
回复

select 名称,cnt from 社会团体 a,
(select 编号,count(1)cnt from 参加 group by 编号) b
where a.编号=b.编号

27,580

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧