Предложение HAVING (SQL Server Compact)
Задает условия поиска для группы или множества. Предложение HAVING обычно используется вместе с предложением GROUP BY.
Синтаксис
[ HAVING < search_condition > ]
Аргументы
< search_condition >
Задает условие поиска, удовлетворяющее данную группу. Условие поиска может использовать статистические и нестатистические выражения. В нестатистических выражениях можно использовать только столбцы, отмеченные в предложении 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;
Однако их использование в SQL Server Compact допустимо, если вместо выражения используется простая переменная столбца, например (c1+c2).
Пример
В следующем примере возвращается список всех продуктов, для которых общее число > 50.
SELECT [Product ID], COUNT(*) AS Total FROM [Order Details] GROUP BY [Product ID] HAVING (COUNT(*) > 50)