mysql - 如何从 bash 脚本中查找重复的 mysql id 集

标签 mysql sql bash duplicates

+---------+-------------+--------------+
|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/

相关文章:

MySql 获取每个父 ID 的最高计数

mysql - 获取具有相似声音的记录

sql - 有没有办法替代 GROUP BY

MySQL 条件相反

sql - 在SQL Server 2008中将图像数据类型转换为varchar

python - 使用多个命令运行 for 循环文件,当第一个命令前一个文件完成时运行下一个文件

php - 无法使用PHP表单登录,但没有显示错误;字段已清除

MySQL 存储过程不会获取整个表

linux - Bash - source &lt;script&gt; 停止使用 bash 4.1.2 在当前目录中搜索

bash - 如何使用 bash (ag) 转义 PCRE 模式