728x90
숫자형 함수
- round 함수 : 해당 항목 레코드의 숫자를 반올림하여 출력하는 함수. 0이 소수점 첫째자리
select round(반올림할 숫자, 자릿수) # (소수점 아래로)입력한 자릿수(숫자)까지 나타냄
select round(100.56789,3)
select cost, round(cost,2)
from `thelook_ecommerce.products`
- trunc 함수 : 해당 항목 레코드의 숫자를 내림(절삭)하여 출력하는 함수. .0 이 소수점 첫째자리
select trunc(숫자, 자릿수)
select trunc(100.56789,3)
select cost, round(cost,2)
from `thelook_ecommerce.products`
- mod 함수 : 해당 항목 레코드의 숫자를 나누기하여 나머지를 출력하는 함수
select mod(숫자,나눌값)
- 숫자와 나눌값의 형(타입)이 맞아야 함
select mod(10,3)
문자열 함수
- substr 함수 : 문자열의 일부만 출력할 수 있음
select substr(문자열, 시작 위치, 길이)
select substr('hello world',3,5)
select substr('hello world',3) #시작위치만 지정 시 , 시작위치부터 끝까지 출력
- left, right 함수 :문자열을 왼쪽(오른쪽)에서 얼만큼 자를 지 설정한 후에 조회
select left(문자열,길이)
select left('064-000-0000',3)
- concat 함수 : 여러 문자열을 하나로 연결
select concat('paul', '-', 'lab')
연결 연산자('||')로도 가능
select first_name || ',' || last_name #concat(first_name, ',', last_name)
from `thelook_ecommerce.users`;
select
id,
name,
cost,
retail_price,
concat(round(cost / retail_price * 100, 2), '%')
from `thelook_ecommerce.products`
- replace 함수 : 바꾸고 싶은 값으로 대상 값을 교체
select replace(gender, 'M', 'Man') #(문자열, 교체 원하는 문자 지정 , 바꿔주고싶은 문자로 지정)
from `thelook_ecommerce.users`;
- length 함수 : 문자열의 길이를 출력합니다. COUNT와 비교해서 기억
select length('hello world')
select length(first_name)
from `thelook_ecommerce.users`;
- instr 함수 : 문자열의 위치를 구하는 함수. INDEX는 1부터 시작. 프로그래밍 언어는 0부터 시작
select instr('abcdef','b')
select instr(email, '@')
from `thelook_ecommerce.users`;
- ifnull 함수 : 해당 컬럼에 NULL값이 있는 경우 다른 값으로 채워넣음
select IFNULL(name, '담당자 지정 안됨')
from `weniv.weniv_event`
형 변환
# CAST(데이터 AS 타입명)
1) 문자열 형태를 변경
# 문자열 -> 숫자로 바꾸는거
# 문자열 -> 자연수(INTEGER)
# 문자열 -> FLOAT
select CAST('123' AS INT64)
select '123' + '123' # 에러
select CAST('123' AS INT64) + CAST('123' AS INT64)
select CAST('123.123' AS FLOAT64)
select CAST('123' AS NUMERIC)
select CAST('123.123' AS NUMERIC)
# NUMERIC => 실수표현하는 단위. Decimal과 동일
2) 숫자 형태를 변경
# 숫자(INTEGER) -> 문자
# 숫자(FLOAT) -> 문자
# true, false -> 문자
select CAST(123 AS STRING)
select CAST(123.123 AS STRING)
select CAST(true AS STRING)
select CAST(false AS STRING)
select CAST(NULL AS STRING)
3) 문자열 -> 날짜타입 변경
# 날짜 타입
# 1) DATE
# 문자열 -> DATE
# 2) DATETIME
# 문자열 -> DATETIME
select DATE('2011-12-01 11:12:34')
select DATETIME('2011-12-01 11:12:34')
※ 형 변환 참고
Big Query | mysql, mariaDB | |
가능한 함수 | string(), cast() | cast(), convert() |
함수 별 사용 법 | string ● 날짜데이터 -> 문자열 cast ● 문자열 -> 숫자 ● 숫자 -> 문자열 |
X |
★
instr 함수 : 지정 문자열의 위치가 나옴. 결과값은 숫자
substr 함수 : 해당 길이? 만큼의 문자열을 가져온다. 결과값 문자열 (파이썬에서 마스킹 역할)
★
ROUND 함수 : ( 숫자, N = 소수점아래 숫자) EX) 소수점 아래 2자리 까지 보고 싶다면 2 입력
★
DATE & DATETIME 함수 : Quarter 정보도 출력 가능 . SQL 4th 수업 들으면서 사용
728x90
'SQL > 멋쟁이 사자처럼 강의 복습' 카테고리의 다른 글
SQL Review (5th UNION) (0) | 2023.01.27 |
---|---|
SQL Review(4th JOIN) (0) | 2023.01.26 |
SQL Review (4th CASE IF) (0) | 2023.01.26 |
SQL Review (3rd. 날짜형 함수) (0) | 2023.01.25 |
SQL Review(2nd. GROUP BY, HAVING ) (0) | 2023.01.21 |