복붙노트

[SQL] 쉼표로 구분 된 목록 열에 별개의 행을 선택 MYSQL

SQL

쉼표로 구분 된 목록 열에 별개의 행을 선택 MYSQL

저는 현재 다시 태그를 제공합니다 일부 SQL을 가지고있다. 그들은 서로 다른 ID를 가지고 있어야하지만, 내 현재의 데이터가 같은, 그래서 그들은 ....하지 않습니다 :

Microsoft | GGG | 1 | 167
Microsoft | GGG | 1 | 2
Microsoft | GGG | 1 | 1

내가 뭘하고 싶은 것은이 같은 구분 된 목록에 연결된 마지막 열이 돌아올 하나 개의 행이해야 할 일 :

Microsoft | GGG | 1 | 167, 2, 1

나는 이것에 대한 MySQL의 5를 사용하고 있습니다.

해결법

  1. ==============================

    1.다른 세 개의 열을 포함하여 그룹이 사용 GROUP_CONCAT () :

    다른 세 개의 열을 포함하여 그룹이 사용 GROUP_CONCAT () :

    SELECT 
      name,   -- Microsoft
      other,  -- GGG
      other2, -- 1
      GROUP_CONCAT(id) AS ids
    FROM tbl
    GROUP BY name, other, other2
    
  2. from https://stackoverflow.com/questions/8343458/mysql-select-distinct-rows-into-a-comma-delimited-list-column by cc-by-sa and MIT license