SQL - Агрегированные функции - Неправильное использование функции COUNT - PullRequest
0 голосов
/ 22 декабря 2019

У меня есть таблица с песнями («Треки» - это название моей таблицы). Я могу использовать эту таблицу только для получения моих данных.

Таблица содержит столбец с идентификатором альбома. Поэтому я пытаюсь найти все альбомы в этой таблице, содержащие не менее 12 песен.

Я использую приведенный ниже код, но получаю сообщение об ошибке (неправильное использование агрегата: COUNT ()

SELECT 
AlbumId,
COUNT(*)
FROM Tracks
WHERE COUNT(*) > 12
GROUP BY AlbumId;

Что именно не так с моим кодом и как я могу получить данные, которые мне нужны?

Спасибо!

1 Ответ

2 голосов
/ 22 декабря 2019

Здесь вам нужен правильный SQL SELECT AlbumId, COUNT(TrackID) AS tracks FROM Tracks GROUP BY AlbumID HAVING COUNT(TrackID) > 12;

ПОЧЕМУ используйте HAVING ??

Потому что вынеобходимо применить условие с более чем 12 дорожками после , сгруппированной по AlbumID.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...