sql Left Join 右表取一条数据,三种方式

一、(Oracle中已驗證OK)

left join

(select l.* from 
  (select RealName,CompanyId,row_number() over (partition by CompanyId order by id desc) as rownum1 from vm_User WHERE IsAdmin=1) l
   where l.rownum1 = 1 )  w

二、left join (select MAX(RealName),CompanyId, from vm_User GROUP BY CompanyId) W

三、

用OUTER APPLY
select b.* FROM a表 a
OUTER APPLY
(select TOP(1) * from b表 WHERE [Name] = a.[AName] ORDER BY BNo desc) b
————————————————
版权声明:本文为CSDN博主「葩熊」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/sinat_36500530/article/details/105116381