Y特奈特 2022-03-12 20:49 采纳率: 91.9%
浏览 11
已结题

关于聚合函数的查询问题

现在有一张表,stu[学生表],表字段: id age sex name address math[数学成绩] english(英语成绩) hire_date(入学日期)
查询男同学和女同学各自的数学平均分,以及各自人数.要求:分数低于70的不参与分组.
我写的sql是:
select sex,count(),avg(math) from stu where math >70 group by sex;
查询结果是:
sex count(
) avg(math)
男 3 59.3333333 显然这是错误的

但是,我看正确的sql写的是:
select sex,avg(math),count() from stu where math >70 group by sex; 结果就对了 ,不太明白,这个count() 书写的顺序还对结果有什么影响吗?

  • 写回答

1条回答 默认 最新

  • DarkAthena ORACLE应用及数据库设计方案咨询师 2022-03-12 21:42
    关注

    你select 字段的顺序,会决定查询结果字段的输出顺序。在sql查询中,字段顺序本身其实也是一个要求
    他要求你的字段顺序是 :

    性别、平均分、人数

    但你输出的字段顺序是:

    性别、人数、平均分

    这当然不对了

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 3月20日
  • 已采纳回答 3月12日
  • 创建了问题 3月12日

悬赏问题

  • ¥20 WPF MVVM模式 handycontrol 框架, hc:SearchBar 控件 Text="{Binding NavMenusKeyWords}" 绑定取不到值
  • ¥15 需要手写数字信号处理Dsp三个简单题 不用太复杂
  • ¥15 数字信号处理考试111
  • ¥100 关于#audobe audition#的问题,如何解决?
  • ¥15 allegro17.2生成bom表是空白的
  • ¥15 请问一下怎么打通CAN通讯
  • ¥20 如何在 rocky9.4 部署 CDH6.3.2?
  • ¥35 navicat将excel中的数据导入mysql出错
  • ¥15 rt-thread线程切换的问题
  • ¥15 高通uboot 打印ubi init err 22