gpt4 book ai didi

MYSQL SELECT 可重复字段到列中

转载 作者:行者123 更新时间:2023-11-29 14:28:41 25 4
gpt4 key购买 nike

我不确定是否必须制作数据透视表或一些子查询才能获得所需的结果,但这是我拥有的表:

asset_id    id       title           title_type34           1       episode 1       534           2       TNS             434           3       WXPR            335           4       episode 57      535           5       BLSH            435           6       WXRE            336           7       episode 56      536           8       BLSH            436           9       WXRE            3

但这就是我想要的。每个 title_type 都在其自己的列中,并且 WHERE title 的 title_type 4 = BLSH。像这样:

asset id       title_type 5     title_type 4    title_type 3 35             episode 56       BLSH            WXRE36             episode 57       BLSH            WXRE

最佳答案

真正的解决方法当然是更改数据库结构;-)

但是,您可以使用 JOIN 来获取所需的数据。在我的示例中,不涉及子选择:

SELECT 
o.asset_id,
/* select the data from the self-joins */
`5`.title AS title_type_5,
`4`.title AS title_type_4,
`3`.title AS title_type_3
FROM
foo o
/* use self-joins to combine data of multiple rows in a single row */
LEFT JOIN foo `3` ON `3`.title_type = 3 AND `3`.asset_id = o.asset_id
LEFT JOIN foo `4` ON `4`.title_type = 4 AND `4`.asset_id = o.asset_id
LEFT JOIN foo `5` ON `5`.title_type = 5 AND `5`.asset_id = o.asset_id
WHERE
o.title_type = "4"
AND o.title = "BLSH"

Try my example on SQLfiddle

关于MYSQL SELECT 可重复字段到列中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10439836/

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