SQL 14

SQL 함수

조건문 함수# 조건문1 판별 tureㅡ> 결과문1 end# 조건물1 판별 falseㅡ> 조건문2 true ㅡ> 결과문2 end# 조건물1 판별 falseㅡ> 조건문2 false ㅡ> 결과문3 end CASE WHEN THEN WHEN THEN ELSE ENDCOALESCE 함수데이터 조회시 NULL값을 다른 기본값으로 대체할때 자주사용.# map함수처럼 인자들을 반복하며 null값인지 조회하고 null값이 아닌값이 나오면 해당값을 리턴.각 매개변수들의 타입은 같아야함SELECT COALESCE(null, null, null, '빈 값') as column1; column1--------- 빈 값(1 row)단 여기서 COALESCE의 인자로 특정값이 아닌 컬럼을 넣는다면 ..

SQL 2025.01.17

SQL 연산자

논리 연산자# A = true, B = NULLA and B = NULL, A or B = true# A = false, B = NULLA and B = false, A or B = NULL# A = NULLNOT A = NULL비교 연산자# IS 와 IS NOT과 true,false,null의 조합으로 6개가 나온다. 리턴값은 true or false(표현식) IS TRUE(표현식) IS NOT TRUE(표현식) IS FALSE(표현식) IS NOT FALSE(표현식) IS NULL(표현식) IS NOT NULLnull = 'false' 와 null is false는 리턴값이 다르다. 차이점에 유의select null = 'false' as equal_false, null is false as is_f..

SQL 2025.01.17

SQL 칼럼 값 제한(제약조건)

NOT NULL빈 값을 허용하지 않는 제약조건. 빈 값이 입력되면 오류 발생create table 테이블명( 칼럼명 데이터타입 NOT NULL);UNIQUE유일한 값을 가져야함. 여러개의 컬럼에 UNIQUE 적용할경우 한번에 선언 가능create table 테이블명( 칼럼명1 데이터타입1 UNIQUE NOT null, 칼럼명2 데이터타입2 UNIQUE NOT null, 칼럼명3 데이터타입3 UNIQUE NOT null);create table 테이블명( 칼럼명1 데이터타입1 NOT null, 칼럼명2 데이터타입2 NOT null, 칼럼명3 데이터타입3 NOT null, UNIQUE(칼럼명1, 칼럼명2, 칼럼명3));Primary Key주 식별자, 주 키, PK. U..

SQL 2025.01.17

SQL 데이터타입

숫자형(Numeric Types)INTEGER : 정수NUMERIC(p,q) / DECIMAL: p전체자리수 q소수점자리수. ex) NUMERIC(4,3) = 0.001 ~ 9.999 NUMERIC(6) = 6자리 정수FLOAT : 부동소수점SERIAL : INTEGER를 기본값으로 1씩 추가되며 값이 자동 생성.화폐형(Monetary Types)금액을 저장하는 데이터 타입. 분수의 형태로 금액 저장문자형(Character Types)VARCHAR(n) : n 이하 문자의 길이 그대로 저장. n 없을 경우 임의의 길이의 모든 문자열 저장 = VARCHAR() = TEXTCHAR(n) : "문자 길이 + 공백" 형태로 맞춰서 저장. n없을 경우 1글자만 저장 = CHAR(1)날짜 및 시간(Date & Ti..

SQL 2025.01.17

SQL ALTER

무언가를 수정할때 사용한다 뒤에 add drop alter를 한번 더 사용하여 다양한 작업이 가능하다.# 테이블명 변경alter table 테이블명 rename to 새로운테이블명;# 컬럼명 변경(rename 생략가능, 참조되어 있을경우 자식테이블 자동 업데이트됨)alter table 테이블명 rename column 기존컬럼명 TO 새컬럼명;# 컬럼 삭제ALTER TABLE 테이블명 DROP COLUMN 컬럼명;# 컬럼 강제 삭제(참조되어 있을경우, 참조된 값은 유지)ALTER TABLE 테이블명 DROP COLUMN 컬럼명 CASCADE;# 컬럼 추가ALTER TABLE 테이블명 ADD COLUMN 컬럼명 데이터타입 제약조건;# 컬럼 타입 변경(SET DATA 생략가능)ALTER TABLE 테이블명 ..

SQL 2025.01.16

SQL WHERE

SELECT, DELETE, UPDATE 작업의 필터링 조건으로 사용한다.WHERE 뒤의 컬럼명과 조건에 따른 데이터를 SELECT, DELETE, UPDATE 처리한다.SELECT * FROM 테이블명 WHERE 컬럼명 = 1;DELETE * FROM 테이블명 WHERE 컬럼명 1;서브쿼리 (WHERE문의 조건으로 쿼리)SELECT * FROM 테이블명 WHERE 컬럼명 = ( SELECT 칼럼명1 FROM 테이블명 WHERE 칼럼명2 = 1);#WHERE의 조건으로 칼럼명이 아닌 숫자나 문자도 가능.SELECT * FROM 테이블명 WHERE '2020-02-14' = ( SELECT 칼럼명1 FROM 테이블명 WHERE 칼럼명2 > 1);서브쿼리의 반환값은 외부쿼리의 연산자에 맞춰야한다.e..

SQL 2025.01.16