Речення having

Інколи треба обрати групи, враховуючи властивості груп як таких. Тоді конструкція “select... group by” доповнюється реченням HAVING, яке є умовою на включення груп у підсумкове відношення.

Приклад 5.16. Нехай необхідно обчислити сумарні значення тривалості фільмів лише тих продюсерів, які випустили бодай один фільм до 1930 року. Відповідний запит:

Рис.5.22. Приклад групування з використанням речення HAVING

Як бачимо, текст запиту прикладу 5.15 доповнено реченням HAVING MIN(year) < 1930.

При виконанні запиту рис.5.22 з підсумкового відношення будуть видалені усі групи, у яких значення year більше або дорівнює 1930. Очевидно, це можна зробити лише після групування усього запиту! WHERE запобігає обробці зайвих записів, а HAVING ні.

Як і в реченні SELECT, у реченні HAVING можна використовувати 2 види атрибутів:

  • Групуючі атрибути з речення GROUP BY;
  • Будь-які інші атрибути відношень, згаданих у реченні FROM, але вони мають бути агреговані.

Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: