1
+---------+-------------+--------------+
|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 のセットがないため表示されません。MySQL 3.23.58 ではこれを実行できないため、bash スクリプトを使用してこれを実行する必要があります (はい、ひどく古いので嫌いですが、私の選択ではありません)。table_uid、group_uid、および product_uid を配列に格納し、各 group_uid を比較して、同じ product_uid が含まれているかどうかを確認しようとしています。助けていただければ幸いです。

4

2 に答える 2

1

上の表をどのように表示していますか?

複数の MySQL 行を 1 つのフィールドに連結できますか?

SELECT group_uid, GROUP_CONCAT(product_uid,separator ','), count(*)
FROM <tab>
GROUP BY group_uid
HAVING count(*) > 1

現在mysqlを持っていないため、文字列をどのように並べるかわかりません

于 2013-08-21T20:48:23.577 に答える