検索

ホームページ  >  に質問  >  本文

mysql - 想用sql语句查询平均值,为何不是平均值呢?

employee表的全部数据:

SELECT EMPLOYEE_id,salary,avg(salary) FROM test1.employees
group by employee_id
having avg(salary)>8000;

使用这个查询语句想得到平均工资大于8000的平均工资,可是为什么结果不是平均工资呢?

PHPzPHPz2874日前718

全員に返信(3)返信します

  • 高洛峰

    高洛峰2017-04-17 15:06:36

    ID でグループ化しているため、各 ID に含まれる給与は 1 つだけではありませんか?

    リーリー

    おそらく、試してみることができます

    返事
    0
  • 怪我咯

    怪我咯2017-04-17 15:06:36

    employee_id でグループ化しています。テーブル レコード内の各employee_id には 1 つのレコードしかありません。
    全従業員の平均給与が必​​要な場合は、グループ化しないでください。

    返事
    0
  • 迷茫

    迷茫2017-04-17 15:06:36

    平均給与について理解するのが難しいのですが、平均とは何ですか?従業員 ID の場合、どのようにしてその人の給与が平均給与であると言えますか?一般的に、平均給与が 8,000 を超える特定の部門の従業員の給与です

    従業員から t.salary,t.employee_id,t1.avg_salary を選択 t 内部結合 (部門 ID による従業員グループから部門 ID,avg(salary) avg_salary を選択) t1 で t.Department_id = t1.Department および t1.avg_salary > 8000

    返事
    0
  • キャンセル返事