+---------+-------------+--------------+
|table_uid| group_uid | product_uid |
+---------+-------------+--------------+
| 8901 | 5206 | 184 |
| 8902 | 5206 | 523 |
| 9194 | 5485 | 184 |
| 9195 | 5485 | 523 |
| 7438 | 1885 | 184 |
| 7439 | 1885 | 184 |
+---------+-------------+--------------+
我的目标是显示包含完全相同的 product_uid 集的任何 group_uid。因此 group_uid 5206 和 5485 最终会显示,而 1885 不会显示,因为它没有同一组 product_uid。我必须通过 bash 脚本来完成此操作,因为我无法在 MySQL 3.23.58 中执行此操作(是的,它太旧了,我讨厌它,但不是我的选择)。我试图将 table_uid、group_uid 和 product_uid 存储在一个数组中,然后比较每个 group_uid 以查看它们是否包含相同的 product_uid。感谢您的帮助!
最佳答案
您如何显示上面的表格?
您可能会在 GROUP_CONCAT Can I concatenate multiple MySQL rows into one field? 上取得一些成功
SELECT group_uid, GROUP_CONCAT(product_uid,separator ','), count(*)
FROM <tab>
GROUP BY group_uid
HAVING count(*) > 1
我不确定它会如何排序字符串,因为我目前没有 mysql
关于mysql - 如何从 bash 脚本中查找重复的 mysql id 集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18366672/