该代码有100.so它给这个错误“缺少右括号”PL/SQL SQL语句忽视和缺失右括号
DECLARE
v_department_name VARCHAR(100);
v_department_manager VARCHAR(100);
v_totalsalary NUMBER(30);
BEGIN
SELECT departments.department_name, concat(employees.first_name,
employees.last_name), employees.salary INTO v_department_name,
v_department_manager, v_totalsalary
FROM employees JOIN departments ON employees.department_id =
departments.department_id
WHERE employees.salary = (SELECT departments.department_id,
sum(employees.salary)
FROM EMPLOYEES
where departments.department_id=100
GROUP BY DEPARTMENT_ID
ORDER BY DEPARTMENT_ID);
DBMS_OUTPUT.PUT_LINE ('Department Name is : ' || v_department_name || 'And
Department Manager is : ' || v_department_manager || 'Total Amount of Salary
is : ' || v_totalsalary);
END;
这让我想起了这篇文章,https://stackoverflow.com /问题/ 44619715/SQL-失踪右括号上阶的语句/ 44622376#44622376。你的问题非常非常接近。正如mathguy声称的那样,子句中没有order by子句。此外,子查询中的列department_id不应该在那里(并且是不必要的)。您应该使用'in'运算符来与子查询进行比较。在很多方面,这是重复的。 –
可能重复[SQL按命令排序的右括号](https://stackoverflow.com/questions/44619715/sql-missing-right-parenthesis-on-order-by-statement) –