需要从 oracle 表数据创建 Totals 报告
Posted
技术标签:
【中文标题】需要从 oracle 表数据创建 Totals 报告【英文标题】:Need to create a Totals report from oracle table data 【发布时间】:2019-09-29 23:01:03 【问题描述】:我在 oracle 中有一个类似于示例表图像的表,我需要输出分离的总计,如第二个示例结果图像所示。 我需要每个 item_type 的总和,其中 A 和 B 只是可以添加的大量可能项目的示例。
示例表:
示例结果:
任何帮助将不胜感激。谢谢
【问题讨论】:
【参考方案1】:使用条件聚合:
SELECT
store,
SUM(CASE WHEN item_type = 'A' AND item_status = 'IN' THEN 1 ELSE 0 END) a_items_in,
SUM(CASE WHEN item_type = 'A' AND item_status = 'OUT' THEN 1 ELSE 0 END) a_items_out,
SUM(CASE WHEN item_type = 'B' AND item_status = 'IN' THEN 1 ELSE 0 END) b_items_in,
SUM(CASE WHEN item_type = 'B' AND item_status = 'OUT' THEN 1 ELSE 0 END) b_items_out
FROM mytable
GROUP BY store
【讨论】:
实际上我应该补充一点,项目类型不会只是 A 或 B,而是最多可以添加 100 个左右的项目和更多项目,所以我需要查询来汇总项目类型而不必继续添加如果可能的话,添加新项目时的查询案例。谢谢 @JamesJohnson:一个 sql 查询必须返回一组 固定 列。您所要求的需要动态 sql,这似乎超出了这个问题的范围。 @JamesJohnson 。 . . GMB 回答了您提出的问题。如果您还有其他问题,我建议您将其作为新问题提出。以上是关于需要从 oracle 表数据创建 Totals 报告的主要内容,如果未能解决你的问题,请参考以下文章