我坚持使用SQL查询,其想法是我有一个数据库,其中所有文档和每个文档version(revisionNumber)等都保留在其中。我要实现的目标是,我现在只想访问具有最新。| id | title | documentForm | revisionNumber | effectiveDate || --: | ------------------- | -------------| -------------: | :------------ || 1 | Event Calendar | SOP-CL | 1.0 | 2011-02-02 || 2 | Event Calendar | SOP-CL | 2.0 | 2012-12-16 || 3 | Event Calendar | SOP-CL | 3.0 | 2014-02-15 || 4 | Event Calendar | SOP-CL | 4.0 | 2014-08-01 || 5 | Event Calendar | SOP-CL | 5.0 | 2016-09-12 || 6 | Event Calendar | SOP-CL | 6.0 | 2018-09-11 || 7 | Software development| SOP-DEV | 1.0 | 2015-11-25 || 8 | Granting and... | SOP-GRA | 1.0 | 2014-08-04 || 9 | Granting and... | SOP-GRA | 2.0 | 2015-12-07 || 10 | Granting and... | SOP-GRA | 3.0 | 2018-03-26 |在这里,您可以看到查询后我需要得到的结果:| id | title | documentForm | revisionNumber | effectiveDate || --: | ------------------- | ------------ | -------------: | :------------ || 6 | Event Calendar | SOP-CL | 6.0 | 2018-09-11 || 7 | Software development| SOP-CL | 1.0 | 2015-11-25 || 3 | Granting and... | SOP-GRA | 3.0 | 2018-03-26 |我一直在谷歌搜索,发现可以通过分组-例如-documentForm并返回revisionNumber来完成,但是我没有得到正确的行MAX(revisionNumber)和id。我想我只是不正确地使用它们。 (adsbygoogle = window.adsbygoogle || []).push({}); 最佳答案 使用相关子查询select * from table1 t1where revisionNumber in ( select max(revisionNumber) from table1 t2 where t1.title=t2.title and t1.documentForm=t2.documentForm group by t2.title,t2.documentForm ) (adsbygoogle = window.adsbygoogle || []).push({});
10-06 15:08