HAVING 句 (SQL Server Compact)

グループまたは集計の検索条件を指定します。通常、HAVING は GROUP BY 句と共に使用します。

構文

[ HAVING < search_condition > ] 

引数

  • < search_condition >
    グループの検索条件を指定します。検索条件では、集計式と非集計式を使用できます。非集計式の場合、使用できる列は、GROUP BY 句でグループ化列として指定している列のみです。これは、GROUP BY 列がグループ全体の共通プロパティを表すためです。同様に、集計式はグループ全体の共通プロパティを表します。HAVING 句の検索条件では、グループのプロパティに関する述語を検索します。

    image 型と ntext 型は HAVING 句には使用できません。

説明

次のクエリは、SQL Server では使用できますが、SQL Server Compact では使用できません。使用した場合は、"集計式とグループ化式では、HAVING 句は集計関数とグループ化式のみを保持できます。" というエラー メッセージが表示されます。

select count(*), c1+c2 from s1 group by c1+c2 having c1+c2 <10; 
select count(*), x from (select *, col1 + col2 as x from oj1) d group by x having x <4;

ただし、式 (c1+c2 など) を単一列変数に置き換えれば、SQL Server Compact でこれらのクエリを使用できます。

使用例

次の例では、合計数 > 50 という条件を満たしたすべての製品のリストが返されます。

SELECT [Product ID], COUNT(*) AS Total FROM [Order Details] GROUP BY [Product ID] HAVING (COUNT(*) > 50)