用于转换此数据维度的 SQL 查询

发布于 2024-08-20 11:53:04 字数 523 浏览 4 评论 0原文

有没有简单的 SQL 查询来转换下面的数据

日期 - 项目 - 成本
2009 年 10 月 31 日 - a - 1
2009 年 10 月 31 日 - b - 2
2009 年 10 月 31 日 - c - 3
2009 年 10 月 31 日 - d - 4

11/30/2009 - a - 5
2009 年 11 月 30 日 - b - 6
2009 年 11 月 30 日 - c - 7
2009 年 11 月 30 日 - d - 8

无需任何应用程序逻辑/存储过程/报告工具即可转换为以下报告格式?

项目 - 10/31/2009 - 11/30/2009
一 - 1 - 5
b - 2 - 6
c - 3 - 7
d - 4 - 8

抱歉,无法想出更好的标题..

Is there any simple SQL query to convert this below data

Date - Item - cost
10/31/2009 - a - 1
10/31/2009 - b - 2
10/31/2009 - c - 3
10/31/2009 - d - 4

11/30/2009 - a - 5
11/30/2009 - b - 6
11/30/2009 - c - 7
11/30/2009 - d - 8

Into below report format without any application logic/store procedure/reporting tool?

Item - 10/31/2009 - 11/30/2009
a - 1 - 5
b - 2 - 6
c - 3 - 7
d - 4 - 8

Sorry, couldn't come up with a better title..

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

孤独陪着我 2024-08-27 11:53:04
SELECT
  item,
  MAX(CASE WHEN dt = CAST('2009-10-31' AS DATE) THEN cost END) AS oct2009_cost,
  MAX(CASE WHEN dt = CAST('2009-11-30' AS DATE) THEN cost END) AS nov2009_cost,
  MAX(CASE WHEN dt = CAST('2009-12-31' AS DATE) THEN cost END) AS dec2009_cost
FROM items
GROUP BY
  item;
SELECT
  item,
  MAX(CASE WHEN dt = CAST('2009-10-31' AS DATE) THEN cost END) AS oct2009_cost,
  MAX(CASE WHEN dt = CAST('2009-11-30' AS DATE) THEN cost END) AS nov2009_cost,
  MAX(CASE WHEN dt = CAST('2009-12-31' AS DATE) THEN cost END) AS dec2009_cost
FROM items
GROUP BY
  item;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文