zoukankan      html  css  js  c++  java
  • sql server 实现多表连接查询

    项目中要实现多表查询,用外连接实现。

    a表 a(aid,aname) 其中aid为pk

    b表 b(aid,bname,aid) 其中 bid为pk,aid为fk

    c表 c(cid,cname,aid) 其中 cid为pk,aid为fk

    d表 d(did,dname,aid) 其中 did为pk,aid为fk

    b,c,d表中外键对应的记录可能多余一条,也可能一条没有.

    select a.id,a.aname,b.bname,c.cname,d.dname  from  a 
    left join  b on a.aid=b.aid
    left join  c on a.aid=c.aid
    left join d on  a.aid=d.aid 
     where a.aid='48CBD6D7-010C-9CC9-30EF-E9F75B22BA75'

    由于bcd表中对应的记录可能不止一条 如果a有一条数据,b有两条,c有两条,d一条也没有,那使用上面的方法就会有四条结果。

    现在使用前面介绍的sql server 按外键分组查询  来选择b、c、d表中的要求数据。

    select ROW_NUMBER() over(partition by lsh order by e.bDJSJ desc,e.cDJSJ desc,e.dDJSJ ) RN,e.* from 
    (select a.lsh,convert(varchar(10),a.DJRQ,120) DJRQ,a.GLH,a.CBKBH,a.BGDWDM,a.BGDWMC,a.XM,a.ZJLXDM,a.ZJHM,a.XB,
    FLOOR(datediff(DY,a.CSRQ,getdate())/365.25) NL,CONVERT(varchar(10),a.CSRQ,120) CSRQ,a.SZNL,a.MZ,a.ZY,a.QTZY,a.LXDH,a.SJHM,a.JYRY,
    a.GZDW,a.BRGS,a.HKLX,a.HKDXXDZ,a.JZDXXDZ,a.DJFL,a.ZLFL,a.FXFS,convert(varchar(10),a.DYZZCSRQ,120) DYZZCSRQ,convert(varchar(10),a.CZRQ,120) CZRQ,
    convert(varchar(10),a.QZRQ,120) QZRQ,a.ZDFX,a.ZDJG,a.FWJHBW,a.HBZDM,a.HBZMC,a.HBZQT,a.FJHKD,a.HIVJCSJ,a.HIVJCJG,a.CD4XBSZ,a.CD4JCSJ,a.SFJSKBDZL,
    convert(varchar(10),a.KBDZLKSRQ,120) KBDZLKSRQ,a.SFJSFFXNMZL,convert(varchar(10),a.FFXNMZLKSRQ,120) FFXNMZLKSRQ,a.SFJSKJHZL,a.HLGLFS,a.SJGLFS,
    a.SFXTGL,a.TZZLYY,convert(varchar(10),a.TZZLRQ,120) TZZLRQ,a.FJHSWYY,a.BZ,b.YX,convert(varchar(10),b.TJRQ,120) TJRQ,b.TTPJG,b.TPYJG,c.SYDWDM,
    c.SYDWMC,convert(varchar(10),c.SYRQ,120) SYRQ,convert(varchar(10),d.ZLKSRQ,120) ZLKSRQ,d.DQZLFA,d.QTFA,b.XT_DJSJ bDJSJ,c.XT_DJSJ cDJSJ,
    d.XT_DJSJ dDJSJ
    from JB_JH_GLK a left join JB_JH_TJJL b on a.LSH=b.GLKLSH left join JB_JH_YMSYJL c on a.LSH=c.GLKLSH left join JB_JH_ZLJL d on a.LSH=d.GLKLSH ) e

    最终结果会按组来分。

  • 相关阅读:
    .bat文件打开指定网页,并运行jar包
    jar包制作一个可执行文件
    如何让局域网其他电脑通过IP直接访问自己电脑的网站
    Sypder 安装和使用
    tomcat服务器输入localhost可以访问,ip无法访问解决办法
    【转载】高性能网站建设
    网站优化
    JavaWeb 项目开发中的技术总结
    反射工具类——ReflectUtils
    Ajax 的缺点
  • 原文地址:https://www.cnblogs.com/hoaprox/p/6405691.html
Copyright © 2011-2022 走看看