sql数据库3表以上的左联查(小白分享)
1.先关联的表主表来left join 关联附属表,如果顺序搞反,筛选出来的结果会丢数据
2.有分组或者升序降序等操作,放到sql语句最后面,标注好具体是哪个表字段,否则报错
3.(推荐)多表联查可以分开几个sql写,然后在合到一起,这样思路清晰,容易找错
下面是3表联查数据,我用的表名和字段 根据自己表和字段替换(加油!)
SELECT
b.OrderCode,
b.BarCodeID,
b.ParentFile1,
b.OpeningProcessType,
b.RawMaterialType,
b.RawMaterialSpecification,
g.FirstAxialThickness as Banding1,
g.TwoAxialThickness as Banding2,
g.ThreeAxialThickness as Banding3,
g.FourAxialThickness as Banding4,
g.EdgeSealingMaterial as AlternateField1,
g.PlankStuffCode,
g.PlankStuffName,
g.PlankStuffSpec
FROM BOMInventory b
LEFT JOIN (
select
s.PlankStuffCode,
t.PlankStuffName,
t.PlankStuffSpec,
s.FirstAxialThickness,
s.TwoAxialThickness,
s.ThreeAxialThickness,
s.FourAxialThickness,
s.EdgeSealingMaterial
from T_PlankStuffInfo t
LEFT JOIN SheetData s on t.PlankStuffCode = s.PlankStuffCode
where 1=1
and (t.PlankStuffName is not null and t.PlankStuffName != ‘’ and t.PlankStuffSpec is not null and
t.PlankStuffSpec != ‘’)
and (s.FirstAxialThickness is not null and s.FirstAxialThickness != ‘’ and s.TwoAxialThickness is not null and
s.TwoAxialThickness != ‘’ and s.ThreeAxialThickness is not null and s.ThreeAxialThickness != ‘’ and
s.FourAxialThickness is not null and s.FourAxialThickness != ‘’ )
)g on g.PlankStuffName = b.RawMaterialType and g.PlankStuffSpec = b.RawMaterialSpecification
WHERE OrderCode = #{orderCode }
AND OpeningProcessType = #{openingProcessType }

sql数据库3表以上的左联查相关推荐

  1. SQL数据库误删除表数据恢复 SQL数据库truncate表数据恢复

    SQL数据库误删除表数据恢复 SQL数据库truncate表数据恢复 误删除表需要恢复该表,要注意几个问题, 第一 删除表后是否新建表了 是否插入数据了. 第二 删除表后是否立即关闭SQL服务了/ 第 ...

  2. 数据库建表原则,SQL数据库建表前期优化,SQL数据库操作优化,数据库命名规范...

    2019独角兽企业重金招聘Python工程师标准>>> 关键字: 数据库建表原则 ·1. 原始单据与实体之间的关系 可以是一对一.一对多.多对多的关系.在一般情况下,它们是一对一的关 ...

  3. SQL数据库建表前期优化

    关 于数据库优化方面的文章很多,但是有的写的似是而非,有的不切实际,对一个数据库来说,只能做到更优,不可能最优,并且由于实际需求不同,优化方案还是有 所差异,根据实际需要关心的方面(速度.存储空间.可 ...

  4. SQL中多表查询:左连接、右连接、内连接、全连接、交叉连接

    一.左连接,右连接,内连接关系 左连接:左表全部+两个表交集(①+②) 右连接:右表全部+两个表交集(③+②) 内连接:两个表交集(②) 二.结合具体例子看(已经在mysql中执行过的例子,可以运行, ...

  5. SQL数据库修改表结构

    修改表结构 表结构是构建一张表的字段数量,类型与排序 1.添加字段 如果添加字段的表是空表,则可以给字段设置非空约束.如果是有数据的表,不能添加非空约束. alter table 表名 add 字段名 ...

  6. SQL数据库操作完全手册

    SQL数据库完全手册 日期:2001-3-24 0:47:00 出处:电脑报 作者:未知 SQL是Structured Quevy Language(结构化查询语言)的缩写.SQL是专为数据库而建立的 ...

  7. 本地获取jqdata的港股通资金数据保存为sql数据库

    from jqdatasdk import * import numpy as np import pandas as pd from datetime import datetime from da ...

  8. 腾讯通服务器文件数据源,Rtx/关于SQL数据库配置

    RTX数据库默认为Access,但可以根据自己需求转换为其他支持ODBC驱动的数据库(MYSQL不支持),必须注意,RTX数据库的数据只允许通过RTXServer SDK接口来更新,不能直接操作数据库 ...

  9. mysql administrator 备份 表_【转】如何使用 MySQL Administrator 管理/备份/还原 My SQL 数据库...

    如何使用 MySQL Administrator 管理/备份/还原 My SQL 数据库 MySQL Administrator 是什么软件? MySQL Administrator 是一个专门用于管 ...

最新文章

  1. 这些知识点你会吗?redis的分布式布隆过滤器含答案解析
  2. web app开发技巧总结
  3. 643 Maximum Average Subarray I
  4. 2018,微软可能要在方方面面融入进企业
  5. linux字符设备文件的打开操作,Linux字符设备驱动模型之字符设备初始化
  6. JavaScript中的原型prototype及原型链
  7. Python 装饰器 函数
  8. 关于C语言中运算符优先级的一次错误
  9. JavaScript中的六种错误类型
  10. Android IPC(三)AIDL实现跨进程通信
  11. Spring MVC JSON自己定义类型转换
  12. android intent singletask,android – launchMode =“singleTask”不会创建新任务
  13. PC电脑控制手机iphone(iOS 11、iOS 12、iOS 13),需越狱
  14. PB调用WebService
  15. Python开发系列课程(14) - 玩转正则表达式
  16. 宁静以致远,淡泊以明志
  17. 写在微信小程序一周年
  18. calc桌面计算机,Calc1(桌面计算器)
  19. go sync.Cond 源码解析
  20. 计算机原理电梯控制系统设计,《智能电梯控制系统的实现》-毕业论文(设计).doc...

热门文章

  1. DB9串及交叉与直通线
  2. KeyError: ‘Failed to format this callback filepath:~~~. Reason: \‘val_loss\‘
  3. 魔百盒CM211-1-ZG_一键替换recovery_当贝桌面卡刷固件包
  4. java 数据结构与算法 ——快速排序法
  5. 去除mac系统下浏览器烦人的右侧和下侧广告条
  6. oralce 查看表空间使用情况
  7. disruptor简单示例
  8. Disruptor介绍使用
  9. [RK3399][Android7.1] 调试笔记 --- 调换dsi和dsi1两路通道数据
  10. RocketMQ Streams拓扑构建与数据处理过程