반응형

본 글은 책 "칼퇴족 김대리는 알고 나만 모르는 SQL 기초 편"의 정리 내용입니다.

결합 연산자 '||' 는 2개 이상의 열을 결합하여 하나의 열에 표현하고 싶을 때 사용된다.

문자 삽입하기


SELECT 열이름1 || '삽입하고 싶은 문자열' || 열이름2
FROM 테이블명;

예제 (고객정보 테이블 : CUSTOMERS)


ID  NAME  CITY COUNTRY
1 SUE BERLIN GERMANY
2 DAVID BERN SWITZERLAND
3 SAM NANTES FRANCE
4 KIM RESENDE BRAZIL
5 LEE VERSAILLES FRANCE
6 BERNEY BERGAMO ITALY
7 SANDY BERLIN GERMANY
8 YOUNG SEOUL KOREA
  • Primary Key는 ID
더보기
CREATE TABLE CUSTOMERS
(ID INT NOT NULL,
NAME CHAR(20) NOT NULL,
CITY CHAR(20) NOT NULL,
COUNTRY CHAR(20) NOT NULL,
PRIMARY KEY('ID')
);

INSERT INTO CUSTOMERS
VALUES
(1, 'SUE', 'BERLIN', 'GERMANY'),
(2, 'DAVID', 'BERN', 'SWITZERLAND'),
(3, 'SAM', 'NANTES', 'FRANCE'),
(4, 'KIM', 'RESENDE', 'BRAZIL'),
(5, 'LEE', 'VERSAILLES', 'FRANCE'),
(6, 'BERNEY', 'BERGAMO', 'ITALY'),
(7, 'SANDY', 'BERLIN', 'GERMANY'),
(8, 'YOUNG', 'SEOUL', 'KOREA');

 

 

Q1. 위 테이블을 사용하여 '도시(나라)' 로 표현되도록 필드를 결합하는 쿼리문

1. 먼저 2개 이상의 열 결합하기(결합 연산자 '||')에서 배운대로 ‘도시’와 ‘나라’ 열을 결합

SELECT CITY || COUNTRY FROM CUSTOMERS;
CITY || COUNTRY
BERLINGERMANY
BERNSWITZERLAND
NANTESFRANCE
RESENDEBRAZIL
VERSAILLESFRANCE
BERGAMOITALY
BERLINGERMANY
SEOULKOREA

 

2. 단순히 결합만 하면 가독성이 떨어지기 때문에 괄호를 추가하면,

SELECT CITY || '(' || COUNTRY|| ')' FROM CUSTOMERS;
CITY || '(' ||COUNTRY || ')'
BERLIN(GERMANY)
BERN(SWITZERLAND)
NANTES(FRANCE)
RESENDE(BRAZIL)
VERSAILLES(FRANCE)
BERGAMO(ITALY)
BERLIN(GERMANY)
SEOUL(KOREA)

 

3. 마지막으로 ADDR 별칭 추가

SELECT CITY || '(' || COUNTRY|| ')' AS ADDR FROM CUSTOMERS;
ADDR
BERLIN(GERMANY)
BERN(SWITZERLAND)
NANTES(FRANCE)
RESENDE(BRAZIL)
VERSAILLES(FRANCE)
BERGAMO(ITALY)
BERLIN(GERMANY)
SEOUL(KOREA)
반응형

'SQL' 카테고리의 다른 글

[SQL] 숫자 함수  (0) 2022.02.12
[SQL] 문자 함수  (0) 2022.02.11
[SQL] 2개 이상의 열 결합하기(결합 연산자 '||')  (0) 2022.02.11
[SQL] 키워드 필터링 (LIKE)  (0) 2022.02.11
[SQL] 논리 연산자 (IN, NOT IN)  (0) 2022.02.11
반응형

본 글은 책 "칼퇴족 김대리는 알고 나만 모르는 SQL 기초 편"의 정리 내용입니다.

결합 연산자 '||' 는 2개 이상의 열을 결합하여 하나의 열에 표현하고 싶을 때 사용된다.

결합 연산자를 이용하여 2개의 필드 결합

|| 연산자


SELECT 열이름1 || 열이름2 FROM 테이블명;
혹은
SELECT 열이름1 || 열이름2 AS 새로운 열이름 FROM 테이블명;

 

예제 (고객정보 테이블 : CUSTOMERS)


ID  NAME  CITY COUNTRY
1 SUE BERLIN GERMANY
2 DAVID BERN SWITZERLAND
3 SAM NANTES FRANCE
4 KIM RESENDE BRAZIL
5 LEE VERSAILLES FRANCE
6 BERNEY BERGAMO ITALY
7 SANDY BERLIN GERMANY
8 YOUNG SEOUL KOREA
  • Primary Key는 ID
더보기
CREATE TABLE CUSTOMERS
(ID INT NOT NULL,
NAME CHAR(20) NOT NULL,
CITY CHAR(20) NOT NULL,
COUNTRY CHAR(20) NOT NULL,
PRIMARY KEY('ID')
);

INSERT INTO CUSTOMERS
VALUES
(1, 'SUE', 'BERLIN', 'GERMANY'),
(2, 'DAVID', 'BERN', 'SWITZERLAND'),
(3, 'SAM', 'NANTES', 'FRANCE'),
(4, 'KIM', 'RESENDE', 'BRAZIL'),
(5, 'LEE', 'VERSAILLES', 'FRANCE'),
(6, 'BERNEY', 'BERGAMO', 'ITALY'),
(7, 'SANDY', 'BERLIN', 'GERMANY'),
(8, 'YOUNG', 'SEOUL', 'KOREA');

문제


Q1. 위 테이블에서 ID와 NAME 열을 하나로 묶어서 출력하는 쿼리문

ID NAME ID_NAME
1 SUE 1SUE
2 DAVID 2DAVID
6 BERNEY 3BERNEY
7 SANDY 7SANDY
더보기
SELECT ID, NAME,
ID || NAME AS ID_NAME
FROM CUSTOMERS;
  • 결합연산자 ‘||’ 또는 ‘+’가 사용되는데 DBMS마다 지원되는 기호가 다르지만 보통 ‘||’를 많이 사용
반응형

+ Recent posts