gpt4 book ai didi

MySQL 计算组连接中的重复项

转载 作者:行者123 更新时间:2023-11-29 10:37:06 25 4
gpt4 key购买 nike

这是执行查询后的结果:

S-029-45,S-029-45BEFR
S-035-45,S-035-45FR,S-029-45,S-029-45FR
S-035-45,S-035-45DE,S-035-45,S-035-45DE
S-029-45,S-029-45DE,C-003-DACH

我只想获取第 3 行。因为S-035-45出现了两次。为了获取这些行,我使用了GROUP_CONCAT(my_colum_name)。

我的查询如下所示:

select group_concat (my_colum_name)
from my table
group by order_id

在我的例子中如何只显示第 3 行?我想获取找到两个重复项的所有数据。我怎样才能做到这一点 ?我无法使用 where mycolumnname = 'S-035-45' 等条件。这些数据是动态的。

谢谢

最佳答案

加入一个查询,该查询计算 my_column_name 的重复次数并返回 order_id,其中计数恰好为 2。

SELECT GROUP_CONCAT(my_column_name)
FROM my_table AS t1
JOIN (SELECT DISTINCT order_id
FROM (SELECT order_id, my_column_name
FROM my_table
GROUP BY order_id, my_column_name
HAVING COUNT(*) = 2) AS x) AS t2
ON t1.order_id = t2.order_id
GROUP BY t1.order_id

关于MySQL 计算组连接中的重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46233603/

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