Computer >> 컴퓨터 >  >> 프로그래밍 >> MySQL

MySQL SELECT에서 열 값을 두 번 표시하는 방법

MySQL에서 하나의 열 값을 한 번의 쿼리로 두 번 표시하고 싶다면 concat() 함수를 활용하면 됩니다. concat()은 여러 문자열이나 값을 하나로 이어 붙여주는 함수로, 같은 열을 구분자와 함께 반복해서 출력할 때 매우 유용합니다.

1. 테이블 생성하기

먼저 예제에 사용할 테이블을 생성해 보겠습니다.

mysql> create table DemoTable
(
    Value int
);
Query OK, 0 rows affected (0.73 sec)

2. 데이터 삽입하기

insert 명령을 사용하여 테이블에 여러 개의 레코드를 삽입합니다.

mysql> insert into DemoTable values(100);
Query OK, 1 row affected (0.18 sec)
mysql> insert into DemoTable values(200);
Query OK, 1 row affected (0.08 sec)
mysql> insert into DemoTable values(100);
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable values(200);
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable values(200);
Query OK, 1 row affected (0.11 sec)
mysql> insert into DemoTable values(100);
Query OK, 1 row affected (0.30 sec)

3. 전체 레코드 조회하기

select 문으로 테이블에 저장된 모든 레코드를 확인합니다.

mysql> select *from DemoTable;

위 쿼리를 실행하면 다음과 같은 결과가 출력됩니다.

+-------+
| Value |
+-------+
|   100 |
|   200 |
|   100 |
|   200 |
|   200 |
|   100 |
+-------+
6 rows in set (0.00 sec)

4. 열 값을 두 번 표시하는 쿼리

이제 concat() 함수를 사용하여 열 값을 '~' 구분자와 함께 두 번 표시하는 방법을 살펴보겠습니다. group by 절을 함께 사용하면 중복된 값 없이 고유한 값별로 결과를 확인할 수 있습니다.

mysql> select concat(Value,'~',Value) from DemoTable group by Value;

실행 결과는 다음과 같습니다.

+-------------------------+
| concat(Value,'~',Value) |
+-------------------------+
|                 100~100 |
|                 200~200 |
+-------------------------+
2 rows in set (0.00 sec)

참고 사항

concat() 함수 안의 구분자('~')는 원하는 문자나 기호로 자유롭게 변경할 수 있습니다. 예를 들어 쉼표(',')나 하이픈('-') 등을 사용해도 무방합니다. 또한 group by를 생략하면 모든 행에 대해 값이 두 번씩 표시되므로, 목적에 맞게 선택하여 사용하시기 바랍니다.