Sql server 使用sql选择不同的记录
我有一个名为Sql server 使用sql选择不同的记录,sql-server,Sql Server,我有一个名为人员作业(ID,人员ID,Post)的表 使用样本数据 ID People ID Post 1 P1 Office Assistant 2 P2 Assistant Manager 3 P3 General Manager 4 P1 Officer 5 P2 Manager 我想得到如下记录 ID People ID Post 3
人员作业(ID,人员ID,Post)
的表
使用样本数据
ID People ID Post
1 P1 Office Assistant
2 P2 Assistant Manager
3 P3 General Manager
4 P1 Officer
5 P2 Manager
我想得到如下记录
ID People ID Post
3 P3 General Manager
4 P1 Officer
5 P2 Manager
但表和列名不应包含空格
但是您的表和列名不应包含空格。不太确定您的要求,但在猜测中,您需要特定人员id的最高id的数据。。。 这应该适合:
select *
from People_Job
where id in (
select max(id)
from People_Job
group by people_id
);
我刚刚看到GriGrim的帖子-如果你在大数据上运行,他的版本应该会表现更好…不太确定你的要求,但在猜测中,你想要特定人物id的最高id的数据。。。 这应该适合:
select *
from People_Job
where id in (
select max(id)
from People_Job
group by people_id
);
我刚刚看到了格里姆的帖子-如果你在大数据上运行,他的版本应该会表现得更好…
SELECT*FROM People\u Job GROUP BY People\u ID
我会选择@amitsigh的解决方案。我不知道为什么会被删除。SELECT*FROM People\u Job GROUP BY People\u ID
。我不知道为什么会被删除。这是我真正想要的答案。谢谢你的回答。这是我真正想要的答案。谢谢你的回答。
select *
from People_Job
where id in (
select max(id)
from People_Job
group by people_id
);