0
테이블을 가지고 작업하고 있습니다. 그림의 경우 :반환 값의 모든 값을 포함한 MySQL 조인
mysql> SELECT users.id, username, REPLACE(selected_groups, '\r', ', '), groups.id, groups.label FROM users LEFT JOIN groups ON users.selected_groups;
+----+------------------------+--------------------------------------+------+---------------+
| id | username | REPLACE(selected_groups, '\r', ', ') | id | label |
+----+------------------------+--------------------------------------+------+---------------+
| 7 | Greg | 1, 2, 3, | 1 | Administrator |
| 7 | Greg | 1, 2, 3, | 2 | Member |
| 7 | Greg | 1, 2, 3, | 3 | Banned |
| 8 | Steve | 1, 2, | 1 | Administrator |
| 8 | Steve | 1, 2, | 2 | Member |
| 8 | Steve | 1, 2, | 3 | Banned |
| 9 | Steve The Banned Admin | 1, 3, | 1 | Administrator |
| 9 | Steve The Banned Admin | 1, 3, | 2 | Member |
| 9 | Steve The Banned Admin | 1, 3, | 3 | Banned |
| 10 | Example man | 1, 2, 3, | 1 | Administrator |
| 10 | Example man | 1, 2, 3, | 2 | Member |
| 10 | Example man | 1, 2, 3, | 3 | Banned |
+----+------------------------+--------------------------------------+------+---------------+
12 rows in set (0.00 sec)
사용자 테이블과 그룹 테이블이 있습니다. users 테이블에는 'selected_groups'열이 있는데,이 그룹 안에서 관련 그룹은 반환 값 ('\ r')을 사용하여 정의됩니다.
문제는 라벨 필드에 필요한 각 라벨을 어떻게 반환 할 수 있는지에 대해 잘 모르겠습니다. 결과물은 이상적으로 다음과 같을 것입니다 :
+----+------------------------+--------------------------------------+------+-------------------------------+
| id | username | REPLACE(selected_groups, '\r', ', ') | id | groups.label |
+----+------------------------+--------------------------------------+------+-------------------------------+
| 7 | Greg | 1, 2, 3, | 1 | Administrator, Member, Banned |
| 8 | Steve | 1, 2, | 1 | Administrator, Member |
| 9 | Steve The Banned Admin | 1, 3, | 1 | Administrator, Banned |
| 10 | Example man | 1, 2, 3, | 1 | Administrator, Member, Banned |
+----+------------------------+--------------------------------------+------+-------------------------------+
이것이 가능한가요? 그렇다면 누군가에게 나에게 도움이되는 조언이나 해결책이 있습니까?
많은 감사, 리키
나는 이런 식으로 작동하지 않을 것 같습니다. 이 인스턴스에서 group_concat이하는 것처럼 보이는 것은 각 사용자가 selected_groups 필드에서 1 \ r2 \ r3 \ r을 (있는 것처럼 각 사용자에 대한 그룹 레이블 모두를 반환하는 것입니다. –
이상한, 그것은 작동해야합니다 ... 나는 다음 시간에 mysql 서버에 액세스하지 못했지만 나중에 확인하겠습니다. – krtek