Recent Posts
Recent Comments
Archives
반응형
250x250
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Today
Yesterday

Total
05-09 03:58
관리 메뉴

Hey Tech

[SQLite] 서로 다른 칼럼의 데이터 병합하기! 본문

AI & 빅데이터/SQLite

[SQLite] 서로 다른 칼럼의 데이터 병합하기!

Tony Park 2021. 2. 9. 09:14
728x90
반응형

안녕하세요, 오늘은 서로 다른 칼럼의 데이터를 병합하는 방법에 대해 공유해 드립니다.

이번 포스팅에서도 SQLite 및 연습용 데이터셋(MLB 선수 정보)을 기반으로 설명해 드립니다.

SQLite 및 연습용 데이터셋 설치가 필요하신 분은 아래 포스팅을 참고해 주세요.

heytech.tistory.com/11?category=453619

 

[SQL] SQLite 및 연습용 데이터셋 설치하기!

오늘부터 SQLite 데이터베이스를 활용하여 SQL의 기본적인 문법을 빠르고 쉽게 전달해 드립니다. 바로 시작하죠! 목차 1. SQLite란? 2. SQLite 설치 3. SQLite Studio 설치 4. 연습용 DB 설치: Baseball Databank..

heytech.tistory.com

바로 시작하죠!

 

데이터 병합이 필요한 경우

SELECT 
    *
FROM 
    Salaries
LIMIT
    10;

이전 포스팅에서 MLB 선수별 연봉정보를 출력해 보았었습니다.

heytech.tistory.com/12

 

[SQL] SELECT: 데이터 출력하기! (Feat. LIMIT)

안녕하세요, 오늘부터 SQLite Studio 환경에서 SQL 구문을 연습해 보는 시간을 갖도록 하겠습니다. SQLite Studio 및 연습용 데이터베이스를 아직 설치하지 않으신 분들은 아래 포스팅을 참고해 주세요 :

heytech.tistory.com

헌데 아래 스크린샷 결과와 같이 playerID에는 정확한 선수들의 full name이 기록되어 있지 않습니다.

ID만 봐서는 정확히 어떤 선수인지 가늠하기 힘들죠.

SELECT 
    *
FROM 
    People
LIMIT
    10;

데이터셋 내 People 이라는 테이블에 선수들의 first name(nameFirst 칼럼)과 last name(nameLast 칼럼)에 대한 정보가 담겨 있습니다.

하지만 성과 이름이 각기 다른 칼럼에 기록되어 있어 full name으로 표기하기 위해서는

두 칼럼의 데이터를 병합 할 필요가 있습니다. 이럴 때 사용하는 것이 '|' 기호입니다.

'||' 기호를 활용한 칼럼 병합

SELECT
	nameFirst || ' ' || nameLast AS FullName
FROM
	People
LIMIT 20;

위의 코드와 같이

 

 

1) 병합할 칼럼(nameFirst, nameLast)을 각각 입력합니다.

2) 입력한 칼럼 이름 사이에 || (Shift + 역슬래시)를 2번 입력합니다.

3) 두 기호(||) 사이에 병합한 후 각 데이터 사이에 들어갈 값을 입력해 줍니다.

저는 한 칸 띄어쓰기를 목적으로 1칸 띄어쓰기를 넣었습니다.

출력 예시

이제 위와 같이 FullName 이라는 새로운 칼럼에 first name과 last name이 병합된 것을 확인하실 수 있습니다.

응용: 특정 playerID의 Full Name 찾아내기

SELECT 
    nameFirst || ' ' || nameLast AS FullName 
FROM
	People 
WHERE 
    playerID = 'rodrial01';

playID가 rodria01인 선수의 full name 을 찾아보는 구문은 위와 같이 WHERE 구문을 쓰면 간단하게 해결되겠죠?

 

(Optional) MySQL에서 칼럼 병합하기

SELECT 
	CONCAT(nameFirst, nameLast)
FROM People
	LIMIT 10;

참고로 MySQL에서는 CONCAT 구문을 통해 두 칼럼을 병합할 수 있습니다.


포스팅에 오류가 있을 경우 댓글 남겨주시면 감사드리겠습니다.

그럼 오늘도 즐거운 하루 보내시길 바랍니다.

고맙습니다 :)

728x90
반응형
Comments