SELECT
dbo.RtlStore.Description,
COUNT(dbo.InvProduct.U_OwnershipType) AS CONSIGNMENT,
COUNT(dbo.InvProduct.U_OwnershipType) AS OUTRIGHT,
COUNT(dbo.InvProduct.U_OwnershipType) AS HOURSEBRAND,
COUNT(dbo.InvProduct.U_OwnershipType) AS GOI,
COUNT(dbo.InvProduct.U_OwnershipType) AS OTHERS
FROM
dbo.RtlStore
LEFT OUTER JOIN
dbo.InvProduct
LEFT OUTER JOIN
dbo.TrxTransactionSaleItem ON dbo.InvProduct.ProductKey = dbo.TrxTransactionSaleItem.ProductKey
LEFT OUTER JOIN
dbo.TrxTransaction ON dbo.TrxTransactionSaleItem.TransactionKey = dbo.TrxTransaction.TransactionKey
ON dbo.RtlStore.StoreKey = dbo.TrxTransaction.StoreKey
GROUP BY
dbo.RtlStore.Description
HAVING
(COUNT(dbo.InvProduct.U_OwnershipType) = N'CONSIGNMENT')
AND (COUNT(dbo.InvProduct.U_OwnershipType) = N'OUTRIGHT')
AND (COUNT(dbo.InvProduct.U_OwnershipType) = N'HOUSEBRAND')
AND (COUNT(dbo.InvProduct.U_OwnershipType) = N'GOI')
AND (COUNT(dbo.InvProduct.U_OwnershipType) = N'OTHERS')
0
A
回答
0
您是否想要转发数据?如果是的话试试这个:
SELECT
dbo.RtlStore.Description,
max(case when dbo.InvProduct.U_OwnershipType = N'CONSIGNMENT' then 1 else null end) AS CONSIGNMENT,
max(case when dbo.InvProduct.U_OwnershipType = N'OUTRIGHT' then 1 else null end) AS OUTRIGHT,
max(case when dbo.InvProduct.U_OwnershipType = N'HOUSEBRAND' then 1 else null end) AS HOURSEBRAND,
max(case when dbo.InvProduct.U_OwnershipType = N'GOI' then 1 else null end) AS GOI,
max(case when dbo.InvProduct.U_OwnershipType = N'OTHERS' then 1 else null end) AS OTHERS
FROM
dbo.RtlStore
LEFT OUTER JOIN
dbo.InvProduct
LEFT OUTER JOIN
dbo.TrxTransactionSaleItem ON dbo.InvProduct.ProductKey = dbo.TrxTransactionSaleItem.ProductKey
LEFT OUTER JOIN
dbo.TrxTransaction ON dbo.TrxTransactionSaleItem.TransactionKey = dbo.TrxTransaction.TransactionKey
ON dbo.RtlStore.StoreKey = dbo.TrxTransaction.StoreKey
GROUP BY
dbo.RtlStore.Description
+0
WOAHHHHHHH。它的工作非常感谢你先生 –
0
尝试此刻评论的HAVING部分,看看是否会帮助,一旦你得到的结果,你可以使用具有
SELECT dbo.RtlStore.Description, COUNT(dbo.InvProduct.U_OwnershipType) AS CONSIGNMENT, COUNT(dbo.InvProduct.U_OwnershipType) AS OUTRIGHT, COUNT(dbo.InvProduct.U_OwnershipType)
AS HOURSEBRAND, COUNT(dbo.InvProduct.U_OwnershipType) AS GOI, COUNT(dbo.InvProduct.U_OwnershipType) AS OTHERS
FROM dbo.RtlStore LEFT OUTER JOIN
dbo.InvProduct LEFT OUTER JOIN
dbo.TrxTransactionSaleItem ON dbo.InvProduct.ProductKey = dbo.TrxTransactionSaleItem.ProductKey LEFT OUTER JOIN
dbo.TrxTransaction ON dbo.TrxTransactionSaleItem.TransactionKey = dbo.TrxTransaction.TransactionKey ON dbo.RtlStore.StoreKey = dbo.TrxTransaction.StoreKey
GROUP BY dbo.RtlStore.Description
--HAVING
-- (COUNT(dbo.InvProduct.U_OwnershipType) = N'CONSIGNMENT')
-- AND (COUNT(dbo.InvProduct.U_OwnershipType) = N'OUTRIGHT')
-- AND (COUNT(dbo.InvProduct.U_OwnershipType) = N'HOUSEBRAND')
-- AND (COUNT(dbo.InvProduct.U_OwnershipType) = N'GOI')
-- AND (COUNT(dbo.InvProduct.U_OwnershipType) = N'OTHERS')
然后将其过滤
相关问题
- 1. 无法从“诠释”转换为“诠释*”
- 2. 子串错误诠释转换为字符串
- 3. Mysql2 ::错误:having子句“
- 4. 转换诠释到整数
- 5. SQL,HAVING子句解释
- 6. Mysql2 ::错误:在'having子句'中的未知列'注释'
- 7. 错误:“诠释”是无法转换为“@lvalue浮动”
- 8. 错误C2440: '=':无法从 '诠释' 转换为 '的char [5]'
- 9. Python的错误 - OverflowError:Python的诠释太大,转换为C长
- 10. 错误:从“诠释”到“为const char *”无效转换
- 11. 错误C2664:无法从 '诠释' 转换参数1到 'INT []'
- 12. 错误:函数模板,不能转换,从“诠释”到“双”
- 13. 转换浮动,以诠释差异
- 14. 无法从“诠释”转换参数“诠释和”
- 15. 错误不能转换 '诠释**' 到 '诠释*' 的参数 '1' 到 'INT显示为(int *)'
- 16. 在having子句
- 17. sql错误:转换nvarchar转换失败
- 18. 诠释转换工作不
- 19. 转换诠释返回NaN
- 20. 无法从“诠释”转换为“System.Predicate
- 21. 浮点无需转换诠释为int
- 22. C#不能转换诠释为双
- 23. 转换诠释为String LINQ表达式
- 24. 如何使多个计数having子句
- 25. CSHARP ado.net错误数据类型为nvarchar转换为数字
- 26. C#错误的数据类型为nvarchar转换为数字
- 27. 诠释到数字转换误差在SQL Server
- 28. C程序设计:转换六角诠释为char *
- 29. SQL - 在HAVING子句
- 30. 错误在视图中将数据类型nvarchar转换为bigint
你在做什么是比较COUNT(dbo.InvProduct.U_OwnershipType),这是数字为“寄卖”,这是一个字符串,只能比较类似的数据类型.. – asmgx
告诉我们什么你试图在这里做 – asmgx
它是从一个组合框,我需要将它提取到列的报告。 PLS帮助 –