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

MySQL에서 공백을 넣어 두 문자열을 연결하는 방법 – CONCAT() 함수 활용

MySQL에서 두 문자열을 하나로 합칠 때는 CONCAT() 함수를 사용하면 됩니다. 이 함수는 여러 개의 문자열 인자를 받아 하나의 문자열로 연결해 주며, 두 값 사이에 공백(' ')을 인자로 전달하면 원하는 위치에 공백을 넣어 연결할 수 있습니다.

실습을 위해 먼저 테이블을 생성해 보겠습니다.

1. 테이블 생성하기

mysql> create table DemoTable
    -> (
    -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
    -> Name varchar(20),
    -> Subject varchar(100)
    -> );
Query OK, 0 rows affected (17.73 sec)

2. 샘플 데이터 삽입하기

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

mysql> insert into DemoTable(Name,Subject) values('John','MySQL');
Query OK, 1 row affected (1.19 sec)

mysql> insert into DemoTable(Name,Subject) values('Chris','SQL Server');
Query OK, 1 row affected (0.88 sec)

mysql> insert into DemoTable(Name,Subject) values('Robert','MongoDB');
Query OK, 1 row affected (2.62 sec)

3. 저장된 데이터 조회하기

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

mysql> select *from DemoTable;

출력 결과

+----+--------+------------+
| Id | Name   | Subject    |
+----+--------+------------+
| 1  | John   | MySQL      |
| 2  | Chris  | SQL Server |
| 3  | Robert | MongoDB    |
+----+--------+------------+
3 rows in set (0.00 sec)

4. 공백을 포함하여 두 문자열 연결하기

다음은 Name 컬럼과 Subject 컬럼의 값을 공백 한 칸으로 구분하여 연결하는 UPDATE 쿼리입니다. concat(Name, ' ', Subject)처럼 두 값 사이에 공백 문자열을 인자로 전달하는 것이 핵심입니다.

mysql> update DemoTable
    -> set Subject=concat(Name,' ',Subject);
Query OK, 3 rows affected (0.38 sec)
Rows matched: 3 Changed: 3 Warnings: 0

업데이트가 정상적으로 완료되었으니, 테이블의 모든 레코드를 다시 조회하여 결과를 확인해 보겠습니다.

mysql> select *from DemoTable;

출력 결과

+----+--------+------------------+
| Id | Name   | Subject          |
+----+--------+------------------+
| 1  | John   | John MySQL       |
| 2  | Chris  | Chris SQL Server |
| 3  | Robert | Robert MongoDB   |
+----+--------+------------------+
3 rows in set (0.00 sec)

출력 결과에서 볼 수 있듯이 Subject 컬럼의 값이 'John MySQL', 'Chris SQL Server', 'Robert MongoDB'처럼 이름과 과목명이 공백으로 구분되어 연결된 것을 확인할 수 있습니다.

참고: 세 개 이상의 값을 연결하거나 구분 기호를 반복해서 입력하는 것이 번거롭다면, CONCAT_WS(' ', Name, Subject)처럼 CONCAT_WS() 함수를 사용하면 첫 번째 인자로 지정한 구분 기호(여기서는 공백)를 자동으로 삽입해 주므로 더욱 간편하게 처리할 수 있습니다.