0

従業員とその上司の名前をリストすることになっています...

問題は、同じテーブルを使用する必要があることです... JOIN を使用する必要はないと思いますか?

SELECT
first_name AS NOMBRE,
manager_id AS ID_JEFE,

(SELECT first_name FROM employees WHERE employee_id = ID_JEFE) AS JEFE

FROM employees

ORDER BY NOMBRE ASC;

なぜこれが機能しないのですか?

4

2 に答える 2

3

サブクエリ レベルでは ID_JEFE 列がないため、機能しません。

正しいクエリは次のようになります。

SELECT
    a.first_name AS NOMBRE,
    a.manager_id AS ID_JEFE,
    b.first_name AS JEFE
FROM employees a left join employees b ON b.employee_id=a.manager_id

ORDER BY a.first_name ASC;
于 2012-12-05T23:44:14.120 に答える
0
SELECT first_name AS NOMBRE, manager_id AS ID_JEFE,
(SELECT first_name FROM employees WHERE employee_id = manager_id ) AS JEFE
FROM employees
ORDER BY NOMBRE ASC;
于 2012-12-06T05:49:56.243 に答える