Ваш подзапрос возвращает два значения, но у вас есть только один столбец в таблице. Вам нужно переписать свой подзапрос, чтобы избавиться от значения COUNT
и использовать его в предложении HAVING
для фильтрации идентификаторов сотрудников:
INSERT INTO EMPLOYEE_ORDERS
SELECT EMPLOYEE.EMPLOYEE_ID
FROM ORDERS
LEFT JOIN EMPLOYEE ON ORDERS.EMPLOYEE_ID = EMPLOYEE.EMPLOYEE_ID
GROUP BY EMPLOYEE.EMPLOYEE_ID
HAVING COUNT(ORDERS.EMPLOYEE_ID) > 0
Обратите внимание, что нет смысла иметь ORDER BY
в вашем подзапросе, поскольку это не повлияет на строки, вставленные в таблицу.
Также обратите внимание, что заменив LEFT JOIN
на JOIN
и поменяв местами порядок таблиц, вы автоматически получите только тех сотрудников, у которых есть 1 или более одинаковых заказов, что позволит упростить запрос:
INSERT INTO EMPLOYEE_ORDERS
SELECT DISTINCT EMPLOYEE.EMPLOYEE_ID
FROM EMPLOYEES
JOIN ORDERS ON ORDERS.EMPLOYEE_ID = EMPLOYEE.EMPLOYEE_ID