2

如果我有这样的桌子:

    ID MANAGER_ID 名称
    1 2 艾哈迈德
    2 3 穆斯塔法
    3 无效穆罕默德
    4 1 阿巴斯
    5 3 阿卜杜拉

如果我想要一个 sql 语句来获取这家公司的经理的名字!会怎么样?

4

3 回答 3

6

这个问题比乍一看要复杂一些:

select Name
from t
where id in (select manager_id from t)

该查询似乎需要某种自联接,因为有关谁是经理的信息在manager_id列中。这会inwhere子句中使用自连接

于 2013-06-22T18:56:56.687 回答
2

您只需要

SELECT NAME from table_name

我刚刚意识到,您只需要在 Manager 为 NULL 的情况下使用它,

SELECT NAME from table_name WHERE MANAGER_ID IS NOT NULL

正如我已经指出的那样,这将散发出经理 3 的气息,因为他在管理其他用户时也是一名经理。请参阅@Gordon 的回答。

于 2013-06-22T18:56:22.327 回答
1
 Select Name 
from TABLENAME 
WHERE MANAGER_ID IS NOT NULL
于 2013-06-22T18:56:53.453 回答