Sobes.tech
Назад к вопросам
Senior
3

- вывести список имен, указав в первом столбце имя, - во втором столбце количество посетителей с таким именем, - в третьем столбце количество посетителей с таким именем и старше 27 лет - отсортировать по имени в порядке возрастания (A-Z) SQL code example: ```sql create table customers ( id int, name text, age int ); insert into customers values (1, 'John', 20), (2, 'John', 20), (3, 'John', null), (4, 'John', 37), (5, 'Jane', null), (6, 'Bob', 13), (7, 'Bob', 99); SELECT name, COUNT(*) AS total, COUNT(CASE WHEN age > 27 THEN 1 END) AS older_27 FROM customers GROUP BY name ORDER BY name ASC; ```

Компании, где спрашивали
Salmon

Ответ от нейросети

sobes.tech AI

Приведённый SQL-запрос корректно решает поставленную задачу:

  • В первом столбце выводится имя.
  • Во втором — общее количество посетителей с этим именем.
  • В третьем — количество посетителей с этим именем и возрастом старше 27 лет.
  • Результат отсортирован по имени в алфавитном порядке.

Вот пример запроса:

SELECT
    name,
    COUNT(*) AS total,
    COUNT(CASE WHEN age > 27 THEN 1 END) AS older_27
FROM customers
GROUP BY name
ORDER BY name ASC;

Если возраст может быть NULL, то условие age > 27 автоматически исключит такие записи из подсчёта в older_27, что соответствует логике задачи.