如下表
我有Table_1及Table_2,我希望的效果是Table_1不变
把表格中,日期最新的加到Table_1上,并且还要把文字描述带入过去
文字描述有长有短,和日期没关系
请问SQL语法怎么写呢?
既然不需要,就干掉了。
可以先找到t2表的每个id的最大日期,再和t1表、t2表关联
select
t1.id
,t1.name
,a.maxdate
,t2.文字描述
from t1
inner join (select id,max('日期') maxdate from t2 group by id) a
on t1.id=a.id
left join t2
on t1.id=t2.id
and t2.'日期'=a.maxdate
你先使用group by(_id) 分类 然后order by 排序时间 取最新,然后使用left join 就可以了啊
SELECT T1._id, T1.name, T2.日期,T2.文字描述
FROM T1
LEFT JOIN T2
ON T1._id=T2._id
GROUP BY T2._id ORDER BY T2.日期
select a.id,a.name,b.date,b.text from Table_1 a
left join (
select * from Table_2 where id in (
select max(id) from Table_2 group by id_1)
) b on a.id = b.id_1