博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
sql server 实现多表连接查询
阅读量:4616 次
发布时间:2019-06-09

本文共 1737 字,大约阅读时间需要 5 分钟。

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

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.aidleft join  c on a.aid=c.aidleft join d on  a.aid=d.aid  where a.aid='48CBD6D7-010C-9CC9-30EF-E9F75B22BA75'

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

现在使用前面介绍的  来选择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

最终结果会按组来分。

 

转载于:https://www.cnblogs.com/hoaprox/p/6405691.html

你可能感兴趣的文章
Makefile (主要讲解的函数不错) 备用
查看>>
【硬件设计】ESD器件在保护电路中的应用(转载于周立功网站)
查看>>
案例分享之继续来找茬(连载五)
查看>>
EasyUI validType属性
查看>>
css 弹出层-透明层
查看>>
Luogu3936 Coloring(模拟退火)
查看>>
转:架构师实践日|亿级短视频应用秒拍的架构实践
查看>>
解决FreeBSD ssh出现Using keyboard-interactive authentication
查看>>
JavaScript(3)
查看>>
替换文本是什么
查看>>
LIS+二分法
查看>>
指针与引用
查看>>
JavaScript---网络编程(9-1)--DHTML技术演示(2-1)-表格创建的几种方式
查看>>
Codeforces-940D. Alena And The Heater
查看>>
Hive查询
查看>>
解决 vs2010 联接sql 2005 时 报错未能加载文件或程序集“Microsoft.SqlServer.Management.Sdk.Sfc...
查看>>
函数初识
查看>>
Java时间日期格式转换Date转String和String转Date
查看>>
Linux简介
查看>>
django查询操作
查看>>