Sql 从子查询中选择特定列

Sql 从子查询中选择特定列,sql,sql-server,Sql,Sql Server,Emp表中的示例数据 Emp deptno eno 1 1 1 2 1 3 2 1 2 2 输出: deptno eno 1 3 2 2 其中我只需要在最终输出中有一列 deptno 1 2 我正在努力写作 select deptno from emp where deptno in (select deptno,max(eno) from emp group by deptno); 这是一个错误

Emp表中的示例数据

Emp

deptno eno
1       1
1       2
1       3
2       1
2       2
输出:

deptno  eno
1        3
2        2
其中我只需要在最终输出中有一列

deptno
1
2
我正在努力写作

select deptno from emp where deptno in (select deptno,max(eno)
from emp
group by deptno);
这是一个错误,我在想

select distinct deptno
from emp;
这能满足你的需要吗?

试试这个

select deptno from emp where deptno in (
    select deptno from emp where eno in (
        select MAX(eno) from emp))

你为什么需要这两个部门?逻辑是什么?或者你只是选择了所有的部门?你的查询没有逻辑意义。与deptno从dbo.emp order中选择distinct deptno相同;你为什么需要额外的并发症?
select deptno
from emp 
group by deptno