• inner join 内联与left join 左联


    今天老板把我叫过去,给我分析了一下我写的存储过程【捂脸羞愧中。。。】,因为又临时加了个需求需要关联另外一个视图,我写成了内联,所以读取出来的数据少了好多。

     1 select t1.MOTCARRIERNAME
     2             ,t2.ROUTENAME
     3             ,y.BUSLICENSE
     4             ,y.ACCTPRICE
     5             ,y.PRICE
     6             ,y.CANACCTPRICE
     7             ,y.CENTERACCTPRICE
     8             ,y.OTHERACCTPRICE
     9             ,y.STAACCTPRICE
    10             ,y.TKAMOUNT
    11             ,y.SCHBILLID
    12             ,m.ManualTicketsStationFee
    13             ,m.ManualTicketsFee
    14         from
    15         (Select b.MOTCARRIERID
    16             ,b.ROUTEID
    17             ,b.BUSLICENSE
    18             ,a.SCHBILLID
    19             ,a.ACCTPRICE
    20             ,a.CANACCTPRICE
    21             ,a.CENTERACCTPRICE
    22             ,a.OTHERACCTPRICE
    23             ,a.PRICE
    24             ,a.STAACCTPRICE
    25             ,a.TKAMOUNT
    26             From history.TKSCHBILLHISTORY a
    27             ,history.TKSERIALSCHHISTORY b
    28             ,history.TKCARRYSTASCHHISTORY c
    29             Where a.Drvdate between @pStartDate and @pEndDate 
    30                 and a.SchBillStatusId=1 
    31                 and b.SchId=a.SchId 
    32                 and b.Drvdate=a.Drvdate 
    33                 and a.schid=c.schid 
    34                 and a.DRVDATE=c.DRVDATE
    35         )y
    36         ,baseinfo.MOTORCARRIER t1
    37         ,baseinfo.ROUTE t2
    38         ,Settlement.dbo.View_ManualTicket m
    39         where t1.MOTCARRIERID=y.MOTCARRIERID and t2.ROUTEID =y.ROUTEID and m.BusLicense=y.BUSLICENSE
    40         order by t1.MOTCARRIERNAME,t2.ROUTENAME,y.BUSLICENSE

    这种关联叫做内联,表A,表B where A.Id=B.Id,只有表A,表B里都有这个ID,这条数据才会被显示出来。但是我的项目中需要的是以表A为主表,只要表A中有的数据都要显示出来,表B中有与表A相关的数据就显示,没有则置为空。

    即A left join B on A.Id=B.Id

  • 相关阅读:
    git查日志命令
    使用git把本地目录传到远程仓库
    本地ssh设置多个git项目访问
    php的phar是什么?
    .ssh免密登录问题解决
    idea配置tomcat时,运行按钮灰色禁用状态
    idea快捷键main,print,代码提示
    windows安装hadoop找不到JAVA_HOME
    spring boot 启动时找不到主类
    jquery 删除自己
  • 原文地址:https://www.cnblogs.com/wsn1203/p/7541962.html
Copyright © 2020-2023  润新知