UDEMY의 The ultimate MySQL Bootcamp 7강을 공부하며 정리한 내용입니다.
SELECT CONCAT(필드명, 필드명, ... )
두개 이상의 필드를 합쳐서 하나의 문자열로 표현할 수 있다.
//author_fname과 author_lname 필드를 합쳐서 표현하는 경우
SELECT CONCAT(author_fname, ' ', author_lname)
AS full_name
FROM books;
SELECT CONCAT_WS(구분자, 필드명, ... )
여러개의 필드를 합쳐서 표현할때, 각각을 구분할 수 있는 기호를 추가할 수 있다. 첫번째 인자로 구분자를 작성한다.
// CONCAT을 사용한 경우
SELECT
CONCAT (title, '-', author_fname, '-', author_lname)
AS bookData
FROM books;
// CONCAT_WS를 사용한 경우
SELECT
CONCAT_WS (' - ', title, author_fname, author_lname)
AS bookData
FROM books;
SELECT SUBSTRING (필드명 또는 문자열, num1, num2
문자열의 num1번째 글자와 num2번째 글자를 추출한다. 숫자를 하나만 작성한 경우, 그 글자수부터 마지막까지를 추출한다. 음수를 하나만 작성한 경우, 문자열의 뒤에서부터 추출한다. 여기서 숫자는 인덱스를 가리키지 않는다.
SELECT SUBSTRING ('Hello World', 1, 4); //HELL
SELECT SUBSTRING ('Hello World', 7); //World
SELECT SUBSTRING ('Hello World', -3); //rld
SELECT SUBSTRING("Where I'm Calling From: Selected Stories", 1, 10); //Where I'm
SELECT SUBSTRING(title, 1, 10) as 'short title' from books;
//CONCAT과 SUBSTRING을 함께 쓴 경우
SELECT
CONCAT(
SUBSTRING(title, 1, 10), '...'
)
AS 'short title'
FROM books;
SELECT REPLACE (필드명 또는 문자열, 기존 문자열, 바꿀 문자열)
문자열의 일부분을 다른 문자열로 바꾼다.
SELECT REPLACE('Hello World', 'l', '7'); //He77o Wor7d
SELECT REPLACE('cheese bread cheese milk', ' ', ' and '); //cheese and bread and cheese and milk
SELECT REPLACE(title, 'e', '3') FROM books;
//SUBSTRING과 REPLACE를 함께 쓴 경우
SELECT
SUBSTRING(
REPLACE(title, 'e', '3'), 1, 10
)
FROM books;
SELECT REVERSE(필드명 또는 문자열)
문자열을 반대 순서로 바꾼다.
SELECT CHAR_LENGTH(필드명 또는 문자열)
문자열의 길이를 구한다.
SELECT author_lname, CHAR_LENGTH(author_lname) AS length
FROM books;
SELECT
CONCAT(
author_lname, ' is ', CHAR_LENGTH(author_lname), ' characters long'
)
AS sentence
FROM books;
SELECT UPPER(필드명 또는 문자열)
SELECT LOWER(필드명 또는 문자열)
문자열을 대문자 혹은 소문자로 바꾼다.
SELECT
CONCAT(
'My favorite book is ', UPPER(title)
)
AS Title
FROM books;
참고링크