Database/SQL 25

[PostgreSQL] Set Returning Functions / Series Generating Functions (시리즈 생성 함수)

generate_series() 함수 를 이용하면 일련의 데이터셋을 만들 수 있다. 단계로 시작부터 끝까지 일련의 값을 생성한다. * 단계 기본값은 1이다. generate_series ( start integer, stop integer [, step integer ] ) → setof integer generate_series ( start bigint, stop bigint [, step bigint ] ) → setof bigint generate_series ( start numeric, stop numeric [, step numeric ] ) → setof numeric 예시) SELECT * FROM generate_series(2,10); SELECT * FROM genera..

Database/SQL 2023.02.17

[MySQL] WINDOW 함수

WINDOW 함수 기본구조 SELECT WINDOW함수( ) OVER ( ) FROM TABLE; · 행 분할 : PARTITOIN BY < GROUP BY 역할 · 행 정렬 : ORDER BY < ORDER BY 역할 · 행 지정 : ROWS 또는 RANGE < WHERE의 역할 함수구분 종류 순위함수 RANK, DENSE_RANK, ROW_NUMBER 집계함수 SUM, MAX, MIN, AVG, COUNT 행 순서 함수 FIRST_VALUE, LAST_VALUE, LAG, LEAD 비율 함수 RATIO_TO_REPORT, PERCENT_RANK, CUME_DIST, NTILE WINDOWIG절 ROWS & RANGE ROWS 는 행의 수를 선택할 때 사용 RANGE 는 값의 범위를 선택할 때 사용 U..

Database/SQL 2022.09.24

[MySQL] Null과 COALESCE() 함수

Null 과 COALESCE() COALESCE() 인수를 순서대로 평가하고 처음으로 NULL이 아닌 첫 번째 식의 현재 값을 반환한다. 구문 COALESCE ( expression [ ,...n ] ) 인수 expression = 모든 형식의 식 반환형식 데이터 형식 우선 순위가 가장 높은 식의 데이터 형식을 반환한다. 모든 식에서 Null을 허용하지 않으면, 결과가 Null을 허용하지 않는 형식으로 처리됨. 예시) COALESCE(NULL, NULL, 'third_value', 'fourth_value'); 세 번째 값이 Null이 아닌 첫 값이기 때문에 세 번째 값을 반환한다. 연습 SELECT purchase_id ,amount ,coupon ,amount - coupon AS discount_a..

Database/SQL 2022.08.17

NULL값

" NULL값 " NULL값 : 아직 지정되지 않은 값 NULL 값은 ‘0’, ‘’ (빈 문자), ‘ ’ (공백) 등과 다른 특별한 값 특징 비교 연산자로 비교 불가능 연산을 수행하면 결과 역시 NULL 값으로 반환됨 예) NULL+숫자’ 연산의 결과는 NULL 집계 함수 계산 시, NULL이 포함된 행은 집계에서 빠짐 연습문제 ① Mybook 테이블 생성 CREATE TABLE Mybook( book_id integer , price integer ); INSERT INTO Mybook VALUES (1, 10000), (2, 20000), (3, null) ; Ο 연산을 수행하면 결과 역시 NULL 값으로 반환되는 예) SELECT price+100 FROM Mybook WHERE book_id = ..

Database/SQL 2022.08.03

SQL내장함수 : 날짜/ 시간함수

SQL내장함수 : 날짜, 시간함수 날짜, 시간함수 함 수 반환 설 명 STR_TO_DATE( string, format ) DATE 문자열(STRING) 데이터를 날짜형(DATE)으로 반환 예) STR_TO_DATE('2022-08-04', '%Y-%m-%d') => 2022-08-04 DATE_FORMAT( date, format ) STRING 날짜형(DATE) 데이터를 문자열(VARCHAR)로 반환 예) DATE_FORMAT('2022-08-04', '%Y-%m-%d') => '2022-08-04' ADDDATE( date, interval 지정시간) DATE DATE 형의 날짜에서 INTERVAL 지정한 시간만큼 더해줌. 예) ADDDATE('2022-08-04', INTERVAL 15 DAY) ..

Database/SQL 2022.08.03

SQL내장함수 : 문자함수

SQL내장함수 : 문자함수 문자값 반환함수 ( s 문자열, c 문자, n 정수, k 정수) 함 수 설 명 CONCAT(s1, s2) 두 문자열을 연결 LOWER(s) 대상 문자열을 모두 소문자로 변환 UPPER(s) 대상 문자열을 모두 대문자로 변환 LPAD(s, n, c) 대상 문자열의 왼쪽부터 지정한 자리수까지 지정한 문자로 채움 RPAD(s, n, c) 대상 문자열의 오른쪽부터 지정한 자리수까지 지정한 문자로 채움 REPLACE(s1, s2, s3) 대상 문자열의 지정한 문자를 원하는 문자로 변경 SUBSTR(s, n, k) 대상 문자열의 지정된 자리에서부터 지정된 길이만큼 잘라서 반환 예) SUBSTR('TISTORY', 3, 4) => 'STOR' TRIM(c FROM s) 대상 문자열의 양쪽에..

Database/SQL 2022.08.03

SQL내장함수 : 숫자함수

SQL내장함수 : 숫자함수 함 수 설 명 ABS(숫자) 숫자의 절댓값 반환 CEIL(숫자) 숫자보다 크거나 같은 최소의 정수 FLOOR(숫자) 숫자보다 작거나 같은 최소의 정수 ROUND(숫자, m) 숫자의 반올림, m은 반올림 기준 정수 LOG(n, 숫자) 숫자의 자연로그값 반환 POWER(숫자, n) 숫자의 n제곱값 반환 SQRT(숫자) 숫자의 제곱근값 반환 (양수) SIGN(숫자) 숫자가 음수면 -1, 0이면 0, 양수면 1 반환 SELECT ABS(-9.5) 절댓값 # 9.5 ,CEIL(7.3) 이상의정수 # 8 ,FLOOR(7.3) 이하의정수 # 7 ,ROUND(7.3165, 2) 반올림 # 7.32 ,LOG(2, 10) 로그값 # 3.32192709488.. ,POWER(2, 3) n승값 # ..

Database/SQL 2022.08.03