Ошибка: столбец недопустим в списке выбора, поскольку он не содержится ни в статистической функции, ни в предложении GROUP BY - PullRequest
0 голосов
/ 20 марта 2020

Я пытаюсь выполнить назначение на Microsoft SQL Management Server, используя следующие инструкции:

  1. Создание представления с именем VIEW1, которое включает следующие поля: код магазина, имя магазина, код региона , название региона.
  2. Создайте представление с именем VIEW2, которое включает следующие поля: код сотрудника, имя сотрудника, фамилия сотрудника, код магазина, имя магазина.
  3. Создание представления с именем VIEW3, которое включает следующие поля : код магазина, название магазина, количество сотрудников в магазине. Протестируйте это представление с помощью команды

Я выполнил шаги 1-2, но когда я перешел к шагу 3, я столкнулся с проблемой. Вот мой шаг 3:

CREATE VIEW VIEW3
AS
SELECT s.STORE_CODE, s."STORE_NAME", COUNT(*) AS EMPLOYEES_COUNT 
FROM EMPLOYEE e join STORE s ON s.STORE_CODE = e.STORE_CODE
GROUP BY e.STORE_CODE;

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

Столбец 'STORE.STORE_CODE' недопустим в списке выбора, потому что он не содержится ни в статистической функции, ни в предложении GROUP BY.

Что мне нужно изменить?

1 Ответ

2 голосов
/ 20 марта 2020

Каждый столбец таблицы или представления в любом неагрегированном выражении в списке должен быть включен в список GROUP BY

Вам необходимо добавить столбец STORE_NAME в группу по списку

CREATE VIEW VIEW3
AS
SELECT s.STORE_CODE, s."STORE_NAME", COUNT(*) AS EMPLOYEES_COUNT 
FROM EMPLOYEE e
JOIN STORE s ON s.STORE_CODE = e.STORE_CODE 
GROUP BY s.STORE_CODE, s."STORE_NAME";
...