개발학습일지

[MySQL] SQL 기본 룰 및 문자열 함수들 _concat(), substring(), replace(), upper() / lower(), reverse(), char_length() 본문

MySQL

[MySQL] SQL 기본 룰 및 문자열 함수들 _concat(), substring(), replace(), upper() / lower(), reverse(), char_length()

처카푸 2024. 5. 13. 17:53

SQL 기본 룰

select 보고싶은 컬럼 명
from 테이블명
where 특정 데이터

 

- 컬럼 명 변경하기

select 변경 전 컬럼명 as  변경 후 컬럼명
from 테이블명

# 변경하려는 컬럼 명에 공백이 있다면 '' 사용한다
select 변경 전 컬럼명 as  '변경 후 컬럼명'
from 테이블명

 

- 데이터 수 확인하기 count()

select count(*)
from 테이블명;

 

SQL 문자열 함수

- 문자열 합치기 : concat(), concat_ws()

# 중간에 공백 넣기
select concat( 컬럼명, ' ' ,컬럼명 ) as full_name
from books;
# 컬럼명 컬럼명


select concat_ws( ' ' , 컬럼명, 컬럼명 ) full_name
from books;
# 컬럼명 컬럼명

# 공백 뿐만 아니라 글씨도 가능하다.
select concat( 컬럼명, ' was released in ',  컬럼명 )
from 테이블명;

 

- 문자열의 일부분만 가져오기 : substring() = substr()

  너무 긴 글자 자르는 방법

# SQL은 1 부터 시작 
select substring( 컬럼명 , 시작숫자 , 끝나는숫자 ) as 새로운컬럼명
from 테이블명;

# 예)
    select substring( title , 1 , 10 ) as title
    from books;

    # concat() 이랑 같이쓰면,
    select concat( substring( title , 1 , 10 ), '...' ) as title
    from books;
    # hello mysq... 이렇게도 가능하다

    # 끝에서 5번째 부터 가져오기
    select substring( 컬럼명 , -5 )
    from 테이블명;

 

- 문자열 내용 바꾸기 : replace()

select replace( 컬럼명, '바꾸기 전 문자열', '바꾸기 후 문자열' ) 
from 테이블명;

 

- 대문자 / 소문자 변환 : upper() / lower()

# replace랑 같이 사용해서 소문자 대문자 구분 없이 바꿀 수 있게 한다.
select replace( lower( 컬럼명 ), '바꾸기 전 문자열', '바꾸기 후 문자열' )
from 테이블명;

 

- 문자열 순서 역으로 바꾸기 : reverse()

select reverse( 컬럼명 )
from 테이블명;

 

- 문자열 개수 구하기 : char_length()

select char_length( 컬럼명 )
from 테이블명;