【问题标题】:Easy Left Join SQL Syntax简单的左连接 SQL 语法
【发布时间】:2017-08-21 17:31:49
【问题描述】:

SQL 新手,想要完成 LEFT JOIN。

我有两个单独的表,代码如下:

SELECT 
    StockCode, SalesOrder, SUM(OrderQty) 
FROM 
    dbo.IopSalesPerf
WHERE 
    dbo.IopSalesPerf.CustRequestDate BETWEEN '2017-07-01' AND '2017-07-31' 
    AND EntrySystemTime = 1
    AND Warehouse = '01' 
    AND StockCode = '001013'
GROUP BY
    StockCode,SalesOrder
ORDER BY 
    StockCode ASC

SELECT 
    SalesOrder, SUM(NetSalesValue), SUM(QtyInvoiced)
FROM 
    ArTrnDetail
GROUP BY
    SalesOrder

我想使用SalesOrder 作为连接列将最后一个表左连接到第一个表上。任何人都可以帮助语法吗?

【问题讨论】:

  • 向我们展示您尝试的查询!
  • 您使用的是什么 rdbms? (MySql、Oracle、Sql Server、PostreSQL,...)?

标签: sql left-join


【解决方案1】:

最简单的方法是:

SELECT * FROM
(
    SELECT StockCode,SalesOrder,sum(OrderQty) 
    FROM dbo.IopSalesPerf
    WHERE dbo.IopSalesPerf.CustRequestDate between '2017-07-01' and '2017-07-31' 
    and EntrySystemTime = 1 and Warehouse = '01' and StockCode = '001013'
    GROUP BY StockCode,SalesOrder
    Order BY StockCode ASc
) AS A
LEFT JOIN
(
    SELECT SalesOrder,sum(NetSalesValue),sum(QtyInvoiced)
    FROM ArTrnDetail
    Group by SalesOrder
) AS B
ON A.SalesOrder = B.SalesOrder

【讨论】:

  • 感谢工作,只需要重命名计算字段。非常感谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-07-11
  • 1970-01-01
  • 2017-02-07
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-09-05
相关资源
最近更新 更多