lau*_*cer 4 sql sqlite group-by
我遇到了一个棘手的问题.我将所有文档的所有版本存储在一个表中.每个文档都有一个唯一的id,版本存储为一个整数,每当有新版本时它就会递增.
我需要一个只从数据库中选择每个文档的最新版本的查询.在使用GROUP BY的作品,看来这将打破这些版本是否会在数据库中的版本中,为了不插入(即它需要它不会永远是最新版本的最大ROWID).
请注意,每个文档的最新版本很可能是不同的编号(即文档A的版本为3,文档B的版本为6).
我在我束手无策,没有任何人知道如何做到这一点(选择所有的文件,但只返回一个记录每个DOCUMENT_ID,并且返回的记录应该具有最高版本号)?
你需要做一个subselect来找到最大版本,就像这样
假设表称为docs
select t.*
from docs t
inner join ( select id, max(version) as ver from docs group by id ) as t2
where t2.id = t.id and t2.ver = t.version
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1378 次 |
最近记录: |