gpt4 book ai didi

mysql - 组织一系列项目的 SQL 语句,每组一个

转载 作者:行者123 更新时间:2023-11-29 04:33:51 25 4
gpt4 key购买 nike

我想写一个sql语句,列出所有属于集合的系列产品,每套订购一个,并列出所有产品。

我的产品是这样组织的。

设置 01
产品01
产品02
产品03

设置 02
产品06
产品07
产品08
产品09

组03
产品11
产品12
产品13
产品14
产品 15

我想创建一个像这样组织它们的 sql 查询

设置 01 - 产品 01
设置 02 - 产品 06
设置 03 - 产品 11
设置 01 - 产品 02
设置 02 - 产品 07
设置 03 - 产品 12
设置 01 - 产品 03
设置 02 - 产品 08
设置 03 - 产品 13
设置 02 - 产品 09
设置 03 - 产品 14
设置 03 - 产品 15

我可以查询按组分组的产品,但无法按组查询一个。

select 
`product_set`.`product_id`,
`product_set`.`set_id`,
`product_set`.`order`
from
`product_set`
inner join
`sets`
on
`product_set`.`set_id` = `sets`.`id`
where
`condition` = true

最佳答案

基本上,您可以按集合枚举值:

select ps.*
from (select ps.*,
(@rn := if(@s = set_id, @rn + 1,
if(@s := set_id, 1, 1)
)
) as rn
from (select ps.product_id, ps.set_id, ps.order
from product_set ps join
sets s
on ps.set_id = s.id
where s.conditionk = true
order by ps.set_id, ps.order
) ps cross join
(select @s := -1, @rn := 0) params
) ps
order by rn, set_id;

关于mysql - 组织一系列项目的 SQL 语句,每组一个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50401987/

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