多表查询结果出现重复记录,根据条件只取其中的一条记录的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" /> 展开
例如两个表,表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" /> 展开
1个回答
展开全部
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
top 1 选出第一条记录
order by time desc 按时间倒序排列,这样第一条记录就是日期最晚的记录了
id=(select id form 表1 order by id esc)表一中的id与表二中相等的id
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询