4
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

持つ と どこ はどう違いますか

4

2 に答える 2

8

where上のフィルターselect ... from

havingからの集計結果に対するフィルタgroup by ...

だから、あなたの例をもう一度見てください:

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

ここでWHERE column_name operator valueは、「'column_name operator value' が true である table_name の結果を返す」と述べています。

これらの条件からのすべての結果が見つかった後でのみ、column_name でグループ化されます。

次にHAVING aggregate_function(column_name) operator value、「結果の集計グループについて、「aggregate_function(column_name)」を実行し、「aggregate_function(column_name) operator value」が true である結果のみを返します。

于 2011-09-12T06:08:43.177 に答える
7
  1. WHERE 句は SELECT、INSERT、DELETE などのステートメントで使用できますが、HAVING 句は SELECT ステートメントでのみ使用できます。
  2. HAVING 句は GROUP BY 句とのみ使用できます
  3. WHERE 句では、集計関数を直接使用することはできません
于 2011-09-12T06:09:02.513 に答える