Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

MySQL에서 DISTINCT와 함께 GROUP_CONCAT 및 CONCAT을 사용하여 단일 열의 값을 인용하는 방법은 무엇입니까?

<시간/>

이를 위해 replace()와 함께 group_concat()을 사용할 수 있습니다. 먼저 테이블을 생성하겠습니다 -

mysql> 테이블 DemoTable1799 생성 ( EmployeeId varchar(20) );쿼리 OK, 영향을 받는 행 0개(0.00초)

삽입 명령을 사용하여 테이블에 일부 레코드 삽입 -

mysql> insert into DemoTable1799 values('101,102,103,104');Query OK, 1개의 row가 영향을 받았습니다.> 

select 문을 사용하여 테이블의 모든 레코드 표시 -

mysql> DemoTable1799에서 * 선택;

그러면 다음과 같은 출력이 생성됩니다.

+-----------------+| 직원 ID |+-----------------+| 101,102,103,104 || 106,109 |+-----------------+2행 세트(0.00초)

다음은 group_concat 및 concat을 사용하여 단일 열의 값을 인용하는 쿼리입니다.

mysql> DemoTable1799의 출력으로 group_concat(distinct concat("'", replace(EmployeeId, ",", "','"), "'"))을 선택합니다.

이것은 다음과 같은 출력을 생성합니다 -

+-------------------------------------+| 출력 |+--------------------------------------+| '101','102','103','104','106','109' |+---------------------------------------- ------------+1 행 세트(0.00초)