Sql 我怎样才能找到一张桌子
如果我有一个员工在哪 雇员ID, 雇员姓名, 名字, 姓, 马格里德, 经理姓名 这里还有员工ID 员工在经理领导下工作 如何从表中查找员工 名字, 雇员姓名, 经理姓名Sql 我怎样才能找到一张桌子,sql,Sql,如果我有一个员工在哪 雇员ID, 雇员姓名, 名字, 姓, 马格里德, 经理姓名 这里还有员工ID 员工在经理领导下工作 如何从表中查找员工 名字, 雇员姓名, 经理姓名 一名经理的员工不超过6名。/*考虑到可能存在经理id为空的顶级员工。MSSQL*中的代码 SELECT FirstName, EmployeeName, ManagerName FROM Employee e INNER JOIN ( SELECT ManagerId FROM Employee
一名经理的员工不超过6名。/*考虑到可能存在经理id为空的顶级员工。MSSQL*中的代码
SELECT FirstName, EmployeeName, ManagerName
FROM Employee e INNER JOIN
(
SELECT ManagerId
FROM Employee
WHERE ManagerId IS NOT NULL
GROUP BY ManagerId
HAVING COUNT(*) <= 6
) t
ON (e.ManagerId = t.ManagerId OR e.ManagerId IS NULL);
/*如果我们不关心经理id是否为空,那么*/
SELECT FirstName, EmployeeName, ManagerName
FROM Employee e INNER JOIN
(
SELECT ManagerId
FROM Employee
GROUP BY ManagerId
HAVING COUNT(*) <= 6
) t
ON (e.ManagerId = t.ManagerId);
您使用的是哪种DBMS?不清楚您在问什么,但请查看HAVING子句~请添加DDL,您需要编写到目前为止您尝试过的内容。
SELECT FirstName, EmployeeName, ManagerName
FROM Employee e INNER JOIN
(
SELECT ManagerId
FROM Employee
GROUP BY ManagerId
HAVING COUNT(*) <= 6
) t
ON (e.ManagerId = t.ManagerId);