多表查询结果出现重复记录,根据条件只取其中的一条记录的sql语句

多表查询结果出现了重复记录,在这些重复的记录中想根据(日期最晚的)条件要其中的一条记录,distinct关键字无效,请问该怎么写?例如两个表,表1,表2表1表2id字段1... 多表查询结果出现了重复记录,在这些重复的记录中想根据(日期最晚的)条件要其中的一条记录,distinct关键字无效,请问该怎么写?

例如两个表,表1,表2

表1 表2

id 字段1 id_xx 字段a time
1 张三 1 +10 01-01
2 李四 1 +20 01-02
3 王二 1 -10 01-03
1 +10 01-04
2 -10 01-01
2 +10 01-02
2 -10 01-03
3 +10 01-01
3 +10 01-02

我想要的记录分别是

1 张三 +10 01-04
2 李四 -10 01-03
3 王二 +10 01-02

请问sql语句该怎么写?谢谢!!!
<img src="http://www.zzmymy.com/1212.gif" width="436" height="376" />
展开
 我来答
深圳钟叔
推荐于2017-09-27 · TA获得超过276个赞
知道小有建树答主
回答量:188
采纳率:0%
帮助的人:195万
展开全部
select top 1 * form 表2 where id=(select id form 表1 order by id esc) order by time desc

top 1 选出第一条记录
order by time desc 按时间倒序排列,这样第一条记录就是日期最晚的记录了

id=(select id form 表1 order by id esc)表一中的id与表二中相等的id
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式