전체 글(199)
-
SQL - NULL 관련 함수
NVL NVL(COL1, 대체값) >>> COL1의 값이 NULL이면 대체값으로 출력 ex) NVL( COLUMN, 'NULL값을 대체한닷') >>> COLUMN이 NULL이면 'NULL값을 대체한닷' 출력 NVL2 NVL2(COL1, 결과1, 결과2) >>> COL1이 NULL이 아니면 COL1이고 NULL이면 결과2 ex) NVL2( COLUMN, 'NULL 아님', 'NULL이닷') >>> COLUMN이 NULL이면 'NULL이닷' 출력 아니면 'NULL 아님' NULLIF NULLIF(v1, v2) >>> v1 == v2이면 null이고 v1 != v2 이면 v1 출력한다. COALESCE COALESCE(v1, v2, v3, ....) >>> NULL이 아닌 최초의 값을 반환 ex) COALES..
2023.03.12 -
자료구조 - 그래프(GRAPH)
정의 - 어떤 자료나 개념을 표현하는 정점(VERTEX)들의 집합 V와 이들을 연결하는 간선(EDGE)들의 집합 E로 구성된 자료구조 - 트리는 계층구조로 한방향(위에서 아래로)으로만 연결되지만 그래프는 제약없이 연결된다. - 위와 같은 이유로 모든 트리는 그래프라고 할 수 있으나 모든 그래프는 트리라고 할 수없다. 종류 - 방향 그래프 VS 무향 그래프(코테에 가장 많이 나옴) 간선에 방향성이 있는지(방향 그래프) 없는지(무향 그래프) - 다중 그래프 VS 단순 그래프 정점과 정점이 연결될 때 간선이 하나인지(단순 그래프) 여러개인지(다중그래프) - 가중치 그래프 => 다익스트라 간선에 수치로 가중치가 있다. 구현방법 - 인접리스트(adjacency list) - 인접행렬(adjacency matrix..
2023.03.11 -
SQL - WHERE 절에 들어가는 연산자
IN(값1, 값2, 값3,...) >>> IN 안에 있는 값이 하나라도 일치하면 TRUE 아니면 FALSE EX) SELECT '출력됨' FROM DUAL WHERE 3 IN(1,2,3) >>> '출력됨' NOT IN(값1, 값2, 값3,...) >>> NOT IN 안에 있는 값이 하나라도 일치하면 FALSE 아니면 TRUE EX) SELECT '출력됨' FROM DUAL WHERE 5 NOT IN(1,2,3) >>> '출력됨' IS NULL >>> NULL 이면 TRUE 아니면 FALSE EX) SELECT '출력됨' FROM DUAL WHERE '이것은 NULL이 아니다' IS NULL >>> 출력되지 않음 IS NOT NULL >>> NULL이 아니면 TRUE 아니면 FALSE EX) SELECT ..
2023.03.10 -
SQL - DECODE, CASE WHEN
DECODE - IF문과 같다 - DECODE( 값1, 값2, 참일때 출력값, 거짓일때 출력값) >>> 값1과 값2가 같으면 참일때 출력값 아니면 거짓일때 출력값이 출력 EX) DECODE(SCORE, 100, '만점', '만점 아님') ==> 점수가 100점이면 '만점' 아니면 '만점 아님' 출력됨 CASE WHEN - IF문과 같다. - CASE WHEN 조건 THEN 조건이 참일 때 결과 ELSE 거짓일때 결과 END - 여러개의 조건에 따른 결과도 나타낼 수 있다. CASE WHEN 조건1 THEN 결과1 WHEN 조건2 THEN 결과2 WHEN 조건3 THEN 결과3 ..... ELSE 결과 END EX) CASE WHEN SCORE > 80 THEN 'GOOD' WHEN SCORE > 60 T..
2023.03.10 -
SQL - 문자형 함수, 숫자형 함수, 날짜형 함수, 형변환 함수
문자형 함수 LOWER(문자열) >>> 영어 문자열 소문자로 변환 LOWER('SQL') ==> 'sql' UPPER(문자열) >>> 영어 문자열 대문로 변환 UPPER('sql') ==> 'SQL' CONCAT(문자열1, 문자열2) >>> 문자열1과 문자열2를 결합 CONCAT('호', '잇') ==> '호잇' SUBSTR(문자열, M, N) >>> 문자열의 M번째 자리부터 N개를 자른다. SUBSTR('SUBWAY', 3, 2) ==> 'BW' LENGTH(문자열), LEN(문자열) >>> 공백을 포함하여 문자열의 길이값 LEN('1 2 3') ==> 5 TRIM(문자열, 제거대상) >>> 왼쪽과 오른쪽에 지정된 문자를 삭제한다, 제거대상을 지정하지 않으면 공백을 제거한다. TRIM('QQQQWERQ..
2023.03.10 -
DML(Data Manipulation Language), TCL(Transaction Control Language)
*참고) 테이블명, 칼럼명 규칙 - 테이블명과 컬럼명은 문자로 시작 - A-Z, a-z, 0-9, #, $, _ 만 사용 가능 - 다른 테이블명과 중복되지 않아야 함 - 칼럼 뒤 데이터 유형은 꼭 지정 DML(Data Manipulation Language) 데이터 입력 INSERT INTO 테이블명(컬러명) VALUES(넣는데이터) 데이터 수정 UPDATE 테이블명 SET 컬럼명=바꾸는데이터 [ WHERE 컬럼명 = 값) 데이터 삭제 DELETE FROM 테이블명 [WHERE 컬럼명 = 값 ] 데이터 조회 SELECT 컬럼명 FROM 테이블명 WHERE 조건문 GROUP BY 집계기준칼럼명 HAVING group by 된 내용의 조건문 ORDER BY 컬럼명 DROP vs TRUNCATE vs dele..
2023.03.10