SQL - 关于HAVING子句

时间:2015-07-07 11:53:16

标签: sql oracle

以下是Oracle的示例问题

问)关于HAVING,以下哪项陈述是正确的? (选择两项。)

一个。它只能在SELECT语句中使用。

B中。它必须在GROUP BY子句之后发生。

℃。它必须在WHERE子句之后发生。

d。除非该表达式是GROUP BY子句中的第一个引用,否则它不能引用表达式。

对我来说,答案应该是A& B.实际答案是A& C." HAVING不能在没有GROUP BY的情况下使用,但不需要遵循GROUP BY"。

该陈述是否正确?请指教。

1 个答案:

答案 0 :(得分:4)

不,不是。聚合不需要GROUP BY子句,因此可以在没有它的情况下使用HAVING。

示例:给我最高工资,但前提是最低工资大于1000。

select max(salary)
from salaries
having min(salary) > 1000;

A和C是正确的,但不是出于给定的原因。