关于使用group by 返回多列的子查询问题

东方先生-java程序猿 2013-07-16 05:16:53
有两张表:
表1:ZDHMD(中文:招待会名单),表2:ZDH(招待会)
表1的表结构为:
XH(主键),ND(年度),ZDHNM(外键,对应表2:ZDH),XM(姓名),JX(军衔),DWZW(单位及职务),BZ(备注)
表2的表结构为:
XH(主键),ZDHNM(招待会名称的内码,和主键基本一样,也是唯一性的值),ZDHMC(招待会名称)
要通过这两张表实现这样的功能:
根据姓名、单位职务,统计参加招待会的次数。
原来的sql是这样拼写的:
SELECT XM,DWZW,COUNT(ZDHNM) AS CS FROM ZDHMD GROUP BY XM,DWZW.
这样能够实现一个统计、查询的功能。但是有一个弊端。
通过这种查询只能返回3列数据,但是项目开发中要求查询出表1中所有的信息(年度不用展示).

希望大家提供思路。谢谢!
...全文
411 6 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
谢谢各位!进行了需求调整。
shy315 2013-07-16
  • 打赏
  • 举报
回复
一句用group by 一句不用group by union all,然后排序
  • 打赏
  • 举报
回复
客户要求这样,需求不能进行改变,这个我也想了很长时间,各位说的也有道理,就是想问下一下,有没有其他方式来实现。
u010412956 2013-07-16
  • 打赏
  • 举报
回复
需求都不合理、、就谈实现,搞笑么
shadow1986a 2013-07-16
  • 打赏
  • 举报
回复
需求有问题吧,如果表1中的所有字段都显示出来还叫统计吗, 直接查询得了。
___花间一壶酒 2013-07-16
  • 打赏
  • 举报
回复
用left join 你的查询只是查出来表一中的数据..没有跟表2做关联呀

17,140

社区成员

发帖
与我相关
我的任务
社区描述
Oracle开发相关技术讨论
社区管理员
  • 开发
  • Lucifer三思而后行
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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