Я сейчас изучаю SQL, и я немного сбит с толку, когда сталкиваюсь с таким запросом:
SELECT CASE
WHEN url like '%abc.com%'THEN 'abc'
When url like '%def.com%'THEN 'def'
When url like '%smiley.com%' THEN 'Smiley'
Else 'others'
End AS 'sites', count(*)
FROM websites_sources
GROUP BY 1;
Приведенный выше запрос работает правильно, но только если оператор GROUP BY использует 1. Если я пишу Group BY «сайты», в результате отображаются только «другие» и общее количество ВСЕХ строк (вместо количества для «других» 'Только и другие сайты).
У меня такой вопрос, поэтому для оператора GROUP BY мы можем использовать только номер для обозначения группировки, а не имя столбца?
Спасибо за вашу помощь!