如果我有这样的桌子:
ID MANAGER_ID 名称 1 2 艾哈迈德 2 3 穆斯塔法 3 无效穆罕默德 4 1 阿巴斯 5 3 阿卜杜拉
如果我想要一个 sql 语句来获取这家公司的经理的名字!会怎么样?
这个问题比乍一看要复杂一些:
select Name
from t
where id in (select manager_id from t)
该查询似乎需要某种自联接,因为有关谁是经理的信息在manager_id
列中。这会in
在where
子句中使用自连接
您只需要
SELECT NAME from table_name
我刚刚意识到,您只需要在 Manager 为 NULL 的情况下使用它,
SELECT NAME from table_name WHERE MANAGER_ID IS NOT NULL
正如我已经指出的那样,这将散发出经理 3 的气息,因为他在管理其他用户时也是一名经理。请参阅@Gordon 的回答。
Select Name
from TABLENAME
WHERE MANAGER_ID IS NOT NULL