SQL一对多特殊查询,取唯一一条

主表:

SQL一对多特殊查询,取唯一一条

辅表:

SQL一对多特殊查询,取唯一一条

一个app对应多个apk,现在要取上线(Apk_Status最大的)的应用

select * from [dbo].[tbl_APP] as app 
join 

(select * from [dbo].[tbl_Apk] as AA where not exists(select top 1 * from tbl_Apk as BB where AA.Apk_APPId=BB.Apk_APPId and AA.Apk_Status < BB.Apk_Status))

 as apk on app.APP_Id = apk.Apk_APPId

重点是取关联的右表:

select * from [dbo].[tbl_Apk] as AA where not exists(select top 1 * from tbl_Apk as BB where AA.Apk_APPId=BB.Apk_APPId and AA.Apk_Status < BB.Apk_Status)

没看懂这个not exists的逻辑 ~~

SQL一对多特殊查询,取唯一一条,布布扣,bubuko.com

SQL一对多特殊查询,取唯一一条

上一篇:分享最近抽空写的一个代码生成器,集成EasyDBUtility数据库访问帮助类


下一篇:RHEL-6.5_x86-64安装Oracle-11.0.2.4系统设置