SELECT * FROM MainTable m
LEFT JOIN (SELECT d.*
FROM (SELECT MAX(clc.Id) AS id FROM ChildTable AS clc GROUP BY clc.ParentId) t
LEFT JOIN ChildTable AS d ON t.id = d.Id ) ccd ON ccd.ParentId = cc.Id
相关文章
- SQL中的rank(),dense_rank(),row_number() rank函数用于返回结果集的分区内每行的排名,行的排名是相关行之前的排名数加一。简单来说rank函数就是对查询出来的记录进行排名,与row_number函数不同的是,rank函数考虑到了over子句中排序字段值相同的情况,如果使用rank函数来生成序号,over子句中排序字段值相同的序号是一样的,后面字段值不相同的序号将跳过相同的排名号排下一个,也就是相关行之前的排名数加一,可以理解为根
- PL/SQL问题 查询出一段时间里最新的记录
- SQL查询问题:两个表字段完全相同,表2里部分与有表1重复记录,现在要把重复的查询出来
- 查询某个字段不同值各自最新的一条数据记录SQL语句
- SQL 一条记录的的两个字段值相同与不同的查询
- sql 联合查询子表时间最新的数据
- SQL 查询表格中某字段不同值的最新一条记录
- SQL 查询表格中某字段不同值的最新一条记录
- 最简单删除SQL Server中所有数据的方法(不用考虑表之间的约束条件,即主表与子表的关系)
- 如何查询sql以获取每个用户的最新记录日期