繁体   English   中英

SQL 连接多个表后获取左连接中的所有数据

[英]SQL after join the multiple tables get all data in left joined

表格1

OCS类型ID OCNum 颜色名称 订购数量
220009069 106307.1 黑色的 200
220009069 106307.1 蓝色的 200
220009069 106307.1 棕色的 4
220009069 106307.1 深绿色 240
220009069 106307.1 白色的 20

表 2

样式ID 颜色名称 材料
220009069 黑色的 面料-(ITL-FC)
220009069 蓝色的 面料-(ITL-FC)
220009069 深绿色 面料-(ITL-FC)
220009069 白色的 面料-(ITL-FC)

我需要加入两个表并显示如下数据

OCS类型ID OCNum 颜色名称 订购数量 样式ID 颜色名称 材料
220009069 106307.1 黑色的 200 220009069 黑色的 面料-(ITL-FC)
220009069 106307.1 蓝色的 200 220009069 蓝色的 面料-(ITL-FC)
220009069 106307.1 棕色的 4 220009069
220009069 106307.1 深绿色 240 220009069 深绿色 面料-(ITL-FC)
220009069 106307.1 白色的 20 220009069 白色的 面料-(ITL-FC)

只需 LEFT JOIN 表 2 到表 1

SELECT DISTINCT
  t1.OCStypeID
, t1.OCNum
, t1.ColorName
, t1.Orderqty
, t2.StyleID
, t2.ColorName AS "ColorName2" 
, t2.Material
FROM Table1 AS t1
LEFT JOIN Table2 AS t2
  ON t2.StyleID = t1.OCStypeID
 AND (   t2.ColorName = t1.ColorName 
      OR t2.ColorName IS NULL
      OR LTRIM(t2.ColorName) = ''
     ) 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM