0

图表:

4张表组合图

查询加入:

SELECT DISTINCT c.CustomerID, c.FirstName , sh.DueDate, p.ProductID,p.ListPrice
FROM SalesLT.Customer c 
  INNER JOIN SalesLT.SalesOrderHeader sh
    ON c.CustomerID = sh.CustomerID 
  INNER JOIN SalesLT.SalesOrderDetail sd
    ON sh.SalesOrderID = sd.SalesOrderID
  INNER JOIN SalesLT.Product p
    ON sd.ProductID = p.ProductID
Order BY ListPrice Desc

输出:

输出

期望的结果:

在此处输入图像描述

对于所需的输出:

  1. 现有查询的附加内容是什么?
  2. 执行此查询的优化方式是什么?
  3. 子查询和连接的时间和空间复杂度是多少?
4

1 回答 1

1

我想你想要:

    SELECT c.CustomerID
    , c.FirstName 
    , sh.DueDate
    , MAX(p.ProductID) ProductID
    ,p.ListPrice
    FROM SalesLT.Customer c 
      INNER JOIN SalesLT.SalesOrderHeader sh
        ON c.CustomerID = sh.CustomerID 
      INNER JOIN SalesLT.SalesOrderDetail sd
        ON sh.SalesOrderID = sd.SalesOrderID
      INNER JOIN SalesLT.Product p
        ON sd.ProductID = p.ProductID
    GROUP BY
    , c.FirstName 
    , sh.DueDate
    , p.ListPrice

Order BY ListPrice Desc

并不是说它作为查询很有意义,但我猜你想知道这种方法?可能您现在已经有了一个很好的答案,但是如果您打勾适当的回答,它会鼓励我们花时间回答,谢谢

于 2013-06-17T16:33:28.793 回答