你这个语句都错了, 怎么还能显示全部呢?
你的group by语句应该这样写才行
group by ststuName,ststuId,subNamehaving HAVING
子句
在
SQL
中增加
HAVING
子句原因是,WHERE
关键字无法与合计函数一起使用。
SQL
HAVING
语法SELECT
column_name,
aggregate_function(column_name)
FROM
table_name
WHERE
column_name
operator
value
GROUP
BY
column_name
HAVING
aggregate_function(column_name)
operator
value
HAVING
对由sum或其它集合函数运算结果的输出进行限制。
比如,我们可能只希望看到Store_Information数据表中销售总额超过1500美圆的商店的信息,这时我们就需要使用HAVING从句。
我们可以使用如下命令实现上述查询目的:
SELECT
store_name,
SUM(sales)
FROM
Store_Information
GROUP
BY
store_name
HAVING
SUM(sales)
>
1500
查询结果显示为:
store_name
SUM(Sales)
Los
Angeles
$1800
注:SQL语言中设定集合函数的查询条件时使用HAVING从句而不是WHERE从句。通常情况下,HAVING从句被放置在SQL命令的结尾处。HAVING 对由sum或其它集合函数运算结果的输出进行限制。 比如,我们可能只希望看到Store_Information数据表中销售总额超过1500美圆的商店的信息,这时我们就需要使用HAVING从句。having要结合group by使用的。
select from table where 1=1 group by x having count() >1
上面的语句,不要having也是可以的。
而group by 和where 可以各自单独使用。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)