紧急求助各位大神,关于提取最后一个处理日期的sql语句

Gallio 2016-06-27 01:07:29
表一:
单证号 处理人 处理日期 类型
1 张三 2016年2月3日 Y
1 王四 2016年2月4日 Y
2 张三 2016年2月5日 Y
2 李二 2016年2月6日 Y
3 赵九 2016年2月7日 Y
3 李二 2016年2月8日 Y
4 赵九 2016年2月10日 Y
表二:
单证号 行政序列号 类型
1 A01 X
1 A02 Y
2 B02 X
2 B01 Y
3 C01 X
3 C02 Y
4 D01 X

1、首先一个单证号可能是一个人处理,也可能是二个人处理
2、表一和表二关联
2、实现提取行政序列号和最后一个处理人和处理日期的结果。

如何通过sql语句实现提取以下的数据结果:
单证号 处理人 处理日期
A02 王四 2016年2月4日
B01 李二 2016年2月6日
C02 李二 2016年2月8日
D01 赵九 2016年2月10日
...全文
161 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Gallio 2016-06-27
  • 打赏
  • 举报
回复
谢谢2位,分已给。帮我大忙了,已找到思路。感谢
卖水果的net 2016-06-27
  • 打赏
  • 举报
回复
引用 4 楼 Gallio 的回复:
[quote=引用 1 楼 wmxcn2000 的回复:] 另一个帖子给你回复了,你只要关联一下这两张表就可以了 [url=http://bbs.csdn.net/topics/391975817[/url]
只关联不行,还要日期比对。[/quote] 另一个帖子的回复,你看了下,有日期的对比;只取最后的日期;
Gallio 2016-06-27
  • 打赏
  • 举报
回复
引用 2 楼 kingtiy 的回复:

wtih tp as (
selelct a.单证号,b.行政序列号,max(处理日期) 处理日期 from 表一 a
join 表二 b  on a.单证号=b.单证号
group by a.单证号, b.行政序列号
)
selelct a.行政序列号,b.处理人,a.处理日期 from tp a join  表一 b on a.单证号=b.单证号
and a.处理日期=b.处理日期
--试下看看?
恩恩,马上试试。我自己想到嵌套一个select语句,相当于产生一个临时表进行临时关联。
Gallio 2016-06-27
  • 打赏
  • 举报
回复
引用 1 楼 wmxcn2000 的回复:
另一个帖子给你回复了,你只要关联一下这两张表就可以了 [url=http://bbs.csdn.net/topics/391975817[/url]
只关联不行,还要日期比对。
Gallio 2016-06-27
  • 打赏
  • 举报
回复
自己琢磨已解决。
kingtiy 2016-06-27
  • 打赏
  • 举报
回复

wtih tp as (
selelct a.单证号,b.行政序列号,max(处理日期) 处理日期 from 表一 a
join 表二 b  on a.单证号=b.单证号
group by a.单证号, b.行政序列号
)
selelct a.行政序列号,b.处理人,a.处理日期 from tp a join  表一 b on a.单证号=b.单证号
and a.处理日期=b.处理日期
--试下看看?
卖水果的net 2016-06-27
  • 打赏
  • 举报
回复
另一个帖子给你回复了,你只要关联一下这两张表就可以了 [url=http://bbs.csdn.net/topics/391975817[/url]

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧