Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/80.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
显示从SQL中筛选的信息_Sql_Having_Pymssql - Fatal编程技术网

显示从SQL中筛选的信息

显示从SQL中筛选的信息,sql,having,pymssql,Sql,Having,Pymssql,我正在尝试编写一个sql语句来显示我们自己提供的所有包,以便我们可以更新权重。只要我的信息都放在一个栏目里,效果就很好。当我尝试从第二列添加SKU时,如果不对SKU列进行分组,它将无法工作 --Need to add [Order Details].SKU here while retaining only for orders that match having statement. SELECT TOP (50) Tracking.OrderNum, Tracking.Poun

我正在尝试编写一个sql语句来显示我们自己提供的所有包,以便我们可以更新权重。只要我的信息都放在一个栏目里,效果就很好。当我尝试从第二列添加SKU时,如果不对SKU列进行分组,它将无法工作

--Need to add [Order Details].SKU here while retaining only for orders that match having statement.
SELECT        TOP (50) Tracking.OrderNum, Tracking.Pounds, Tracking.Ounces
FROM            Tracking INNER JOIN
              [Order Details] ON Tracking.OrderNum = [Order Details].OrderNumber AND Tracking.OrderNum = [Order Details].OrderNumber 
--Adjustment differentiates items from charges like tax ect.
WHERE        ([Order Details].Adjustment = 0)
GROUP BY Tracking.OrderNum, Tracking.Pounds, Tracking.Ounces
HAVING        (COUNT([Order Details].OrderNumber) = 1)
ORDER BY CAST(Tracking.OrderNum AS INT) DESC
我最后用了这个:

WITH SingleShips AS
(
SELECT        Tracking.OrderNum, Tracking.Pounds, Tracking.Ounces
FROM            Tracking INNER JOIN
                         [Order Details] ON Tracking.OrderNum = [Order Details].OrderNumber
WHERE        ([Order Details].DetailDate > GETDATE()-180) AND [Order Details].Adjustment=0 
             --and Tracking.OrderNum = 216986

GROUP BY Tracking.OrderNum, Tracking.Pounds, Tracking.Ounces
HAVING        (COUNT([Order Details].OrderNumber) = 1) AND SUM([Order Details].QuantityOrdered) = 1
)

SELECT        [Order Details].DetailDate, [Order Details].SKU, SingleShips.*
FROM            SingleShips INNER JOIN
                        [Order Details] ON SingleShips.OrderNum = [Order Details].OrderNumber 
WHERE        ([Order Details].Adjustment = 0) and SingleShips.OrderNum = [Order Details].OrderNumber
ORDER BY SKU
谁有更好的解决方案?因为我是新手,所以我非常感谢反馈