首页 > 其他 > 详细

为啥要用left join on where这样的东西

时间:2019-05-17 19:48:11      阅读:132      评论:0      收藏:0      [点我收藏+]

 

1

SELECT a.VILLAGENAME,a.DELIVERYADDTIME,a.DELIVERYTYPE,b.name,b.DELIVERY_AREA_DESC,b.PICKUP_AREA_DESC
from T_WEB_TOWNSHIPDELIVERY a LEFT JOIN
T_BAS_SALES_DEPARTMENT b
ON a.DELIVERYSALESDEPTCODE = b.code where a.VILLAGECODE = ‘310118010‘

2

SELECT a.VILLAGENAME,a.DELIVERYADDTIME,a.DELIVERYTYPE,b.name,b.DELIVERY_AREA_DESC,b.PICKUP_AREA_DESC
from T_WEB_TOWNSHIPDELIVERY a,
T_BAS_SALES_DEPARTMENT b
WHERE a.DELIVERYSALESDEPTCODE = b.code
and a.VILLAGECODE = #{code,jdbcType = VARCHAR}

如果用第二种,那么当在b表中查不到code的时候,这时候查询不到数据,返回的全是空,但是a表里面却会有数据,那么这个时候就不对了。
而用1查,就是将a表查到的东西和b表查到的结合,不管b有没有查到东西,a中查到的东西这个时候是都会返回的。

为啥要用left join on where这样的东西

原文:https://www.cnblogs.com/woainixxx/p/10883087.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!