某应试教程上的一道题目,create view d_view(dep,d_num,d_totals,d_avgpay) as
(select 部门号,count(*),sum(月工资),avg(月工资)
from 职员
(d) count(*) >2 where 部门号 is not null);其中(d)的答案是:group by 部门号 having提问,我一直来的记忆都是先where,然后才group by,having的,
然后答案提供的书写顺序是正确的吗?
先谢谢热心人了

解决方案 »

  1.   

    提问,我一直来的记忆都是先where,然后才group by,having的
    ------------------------
    的确是这样的,要么书上印错了
      

  2.   

    SELECT select_list [ INTO new_table ] [ FROM table_source ] [ WHERE search_condition ] [ GROUP BY group_by_expression] [ HAVING search_condition] [ ORDER BY order_expression [ ASC | DESC ] ] 
      

  3.   

    可以没有where。有的话是先筛选出数据,然后对筛选结果进行group by,然后使用having进行组筛选。
    没有where,是对所有的数据进行group by,然后使用having进行组筛选
      

  4.   


    先where,然后才group by,having 这是语法问题,where有的时候顺序必须这样
      

  5.   

    可以没有where  而直接Group