gpt4 book ai didi

mysql - 将行转换为mysql数据库中的列

转载 作者:行者123 更新时间:2023-11-29 02:58:15 25 4
gpt4 key购买 nike

我有一个表格,其中包含所有日期的项目的所有值。表名是 item_data

╔═════════╦═══════╦═════════════╗
║ item_id ║ value ║ report_date ║
╠═════════╬═══════╬═════════════╣
║ 101 ║ 50 ║ 2014-10-11 ║
║ 102 ║ 50 ║ 2014-10-11 ║
║ 101 ║ 100 ║ 2014-10-12 ║
║ 102 ║ 11 ║ 2014-10-12 ║
╚═════════╩═══════╩═════════════╝

我还有另一个表,其中包含项目名称表名称是 page_items

╔═════════╦═══════════╗
║ item_id ║ item_name ║
╠═════════╬═══════════╣
║ 101 ║ sprite ║
║ 102 ║ egg ║
╚═════════╩═══════════╝

我的要求是我想显示如下值

╔═════════════╦════════╦═════╗
║ report_date ║ sprite ║ egg ║
╠═════════════╬════════╬═════╣
║ 2014-10-11 ║ 50 ║ 50 ║
║ 2014-10-12 ║ 100 ║ 11 ║
╚═════════════╩════════╩═════╝

谁能帮帮我 我正在使用mysql数据库 请告诉我得到这个结果的过程

最佳答案

您可以使用条件聚合 maxcase,按日期分组:

select report_date,
max(case when item_id = 101 then value end) sprite,
max(case when item_id = 102 then value end) egg
from item_data
group by report_date

关于mysql - 将行转换为mysql数据库中的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27699625/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com