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

MySQL에서 두 개의 컬럼을 연결하는 방법 – CONCAT() 함수 완벽 가이드

MySQL에서 두 개의 컬럼을 하나로 합쳐서 조회하고 싶을 때는 CONCAT() 함수를 사용하면 됩니다. CONCAT()은 여러 문자열이나 컬럼 값을 이어 붙여 하나의 문자열로 반환해 주는 아주 유용한 함수입니다.

CONCAT() 함수 기본 문법

select CONCAT(yourColumnName1, ' ', yourColumnName2) as anyVariableName from yourTableName;

위 문법에서 작은따옴표로 묶인 공백(' ')은 두 컬럼 사이에 들어갈 구분자입니다. 필요에 따라 쉼표, 하이픈 등 원하는 문자로 바꿔 사용할 수 있습니다.

예제 테이블 생성하기

개념을 이해하기 위해 먼저 예제 테이블을 만들어 보겠습니다. 테이블 생성 쿼리는 다음과 같습니다.

mysql> create table concatenateTwoColumnsDemo
    -> (
    -> StudentId int,
    -> StudentName varchar(200),
    -> StudentAge int
    -> );
Query OK, 0 rows affected (1.06 sec)

샘플 데이터 삽입하기

테이블을 생성했다면 이제 학생 정보 레코드를 몇 개 삽입해 보겠습니다.

mysql> insert into concatenateTwoColumnsDemo values(1,'Sam',21);
Query OK, 1 row affected (0.18 sec)

mysql> insert into concatenateTwoColumnsDemo values(2,'David',24);
Query OK, 1 row affected (0.17 sec)

mysql> insert into concatenateTwoColumnsDemo values(3,'Carol',22);
Query OK, 1 row affected (0.13 sec)

mysql> insert into concatenateTwoColumnsDemo values(4,'Johnson',19);
Query OK, 1 row affected (0.17 sec)

전체 데이터 조회하기

SELECT 문을 사용하여 테이블의 모든 레코드를 확인합니다.

mysql> select *from concatenateTwoColumnsDemo;

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

+-----------+-------------+------------+
| StudentId | StudentName | StudentAge |
+-----------+-------------+------------+
|         1 | Sam         |         21 |
|         2 | David       |         24 |
|         3 | Carol       |         22 |
|         4 | Johnson     |         19 |
+-----------+-------------+------------+
4 rows in set (0.00 sec)

CONCAT()으로 두 컬럼 연결하기

이제 CONCAT() 함수를 실제로 적용해 보겠습니다. 여기서는 StudentName 컬럼과 StudentAge 컬럼을 연결하여 이름과 나이가 함께 표시되도록 합니다.

mysql> select CONCAT(StudentName, ' ', StudentAge) as NameAndAgeColumn from concatenateTwoColumnsDemo;

두 컬럼이 연결된 결과는 다음과 같습니다.

+------------------+
| NameAndAgeColumn |
+------------------+
| Sam 21           |
| David 24         |
| Carol 22         |
| Johnson 19       |
+------------------+
4 rows in set (0.00 sec)

참고 사항

CONCAT() 함수에서 연결하는 값 중 하나라도 NULL이면 전체 결과가 NULL로 반환됩니다. NULL 처리가 필요하다면 IFNULL() 또는 COALESCE() 함수와 함께 사용하는 것이 좋습니다. 또한 세 개 이상의 컬럼도 동일한 방식으로 자유롭게 연결할 수 있습니다.