정규 표현식 문자열의 공통 규칙을 일반화 해서 표현 정규 표현식 사용 가능한 문자 함수 제공 특정 패턴 찾기에 유리 정규 표현식 종류 1️⃣ 기본 메타 문자 | 표현식 | 의미 | | | --- | --------- | -- | | . | 임의의
하나의 속성 -> 하나의 컬럼 동일 키 값 반복 가능RDBMS 설계 방식타 테이블과 조인 연산 가능행 : 관찰 단위열 : 측정 변수, 속성하나의 속성 -> 여러 컬럼 \-> 데이터가 많으면 열도 많아짐타 테이블과 조인 불가PIVOT : long data -> wide
START WITH : 시작점 지정CONNECT BY PRIOR : 이어질 행의 조건NOCYCLE : 루프 방지PRIOR : PRIOR 컬럼A = 컬럼B -> 컬럼 A 읽고 그 값이 일치하는 컬럼 B 연결자식 = 부모 : 순방향 전계부모 = 자식 : 역방향 전계\->
TOP N 쿼리 TOP N 쿼리 전체 데이터에서 상위 N개 행 추출 (페이징) TOP-N 행 추출 방법 ROWNUM 출력 데이터 기준으로 행 번호 부여 -> 정렬 기준에 따라 바뀜 단, 가상 번호라 특정 행 지정 불가
윈도우 함수 조인, 서브쿼리 없이 행과 행간 비교, 연산하게 해줌 각 행 유지하며 연산 가능 (GROUP BY 안해도 OK) 윈도우 함수 안에 집계, 순위 함수 같은 걸 넣는다. PARTITION BY : 그룹 연산 수행할 그룹 지정 ORDER BY : 순위
ANSI/ISO SQL 표준 데이터 분석용 함수null 값은 무시한다.행의 개수를 카운트특정 컬럼만 카운트 할 경우, null 값은 카운트 안함총 합 출력숫자 컬럼만 사용 가능평균 출력 (숫자 컬럼만 사용 가능)최대, 최소 출력날자, 숫자, 문자 모두 사용 가능분산,
SELECT문 결과를 집합 취급해서 집합 연산하기\-> 두 집합 간 컬럼의 순서와 타입이 호환되어야 함 (이때, 타입은 첫번째 집합에 의해 결정)\-> 두개 이상의 테이블에서 join 없이 연관 데이터 조회하는 방법중복 데이터는 1번만 출력하는 합집합중복 데이터도 다
\-SQL 안에 있는 SQL괄호로 감싸야 함단일행, 복수행 비교 연산자 사용 가능ORDER BY 사용 불가.\-> 특정 값 계산이나 테이블 같이, WHERE에서 조건 비교용으로 활용할 수 있다.인라인 뷰 같이 쓸 떄 조인할 테이블의 기본키가 2개 이상이면 WHERE에서
ANSI 표준으로 작성되는 조인INNER / CROSS / NATURAL / OUTER선택, 투영, 합집합, 차집합, 곱집합으로관계를 입력받아 관계를 출력하는 관계대수의 기본 연산자\+) DIVIDE는 이제 안 쓴다.내부 조인. 조건이 일치하는 교집합만 보여줌오라클은
여러 테이블 참조, 출력용보통 PK, FK로 조인함A,B,C 테이블 조인시 A,B 하고 그 결과를 C와 하는 방식으로 진행됨테이블간 컬럼이 일치하는 경우 사용오라클 버전ANSI/ISO SQL 버전테이블 간 컬럼이 일치하지 않을 때 사용\-> 범위를 가지고 조회에 사용조
데이터 정렬함ASC : 오름차순 (기본값)DESC : 내림차순\-> 이렇게 하면 나이순으로 내림차순 된다.복수의 컬럼을 기준으로도 가능. (왼쪽에 있는 게 우선 순위 높아짐)as 사용 가능null의 경우 오라클에서는 최댓값, SQL Server에서는 최솟값 취급SELE
데이터를 묶어서 그룹의 통계 얻을 때 사용\-> 레벨 별로 사용자를 묶어서 각 레벨 별 인원수를 구한다.이때, 그룹화되지 않은 컬럼은 사용 불가. (예: 저 상태에서 사용자별 코인 수 조회는 불가. 단, AVG 같이 집계함수를 사용하면 가능)즉, GROUP BY로 묶고
WHERE 조건에 맞는 데이터 필터링 -null도 IS NULL과 IS NOT NULL로 조회 가능 집계 함수는 불가 (이건 HAVING에서 사용) 연산자 | 우선순위 | 연산자 | 설명 | | ----
입력값 받아서 출력값 반환입력: 출력 = 1:1데이터 변환, 조작용 (SELECT, WHERE, ORDER BY등)함수 중첩 가능여러행으로 하나의 결과값 리턴합계, 평균등 (SELECT, HAVING등)GROUP BY랑 같이 쓰기도 함🔢 숫자 함수🔤 문자열 함수 (
SELECT문 SQL 문장 종류 데이터 조작어 (DML) : SELECT, INSERT, UPDATE, DELETE 데이터 정의어 (DDL) : CREATE, ALTER, DROP, RENAME 데이터 제어어 (DCL) : GRANT, REVOKE 트랜잭션 제어어 (
데이터베이스 : 데이터를 일정한 형태로 저장관계형 데이터베이스 시스템 : 데이터를 효율적으로 관리, 복구 해주는 시스템 1960 : FlowChart 중심, 파일구조1970 : 계층형, 망형 DB 1980 : 관계형 DB1990 : 객체 관계형 DBsql 문장으로 관리
업무에 의해 만들어지는 식별자본질 식별자로 만들어진 식별자장점 : 개발 편의성 증가단점 : 중복 데이터 발생, 불필요 인덱스 생성 가능
Null : 아직 정의되지 않은 값 \- null은 연산해도 nullnull은 비교하면 unknown 반환집계함수에서는 제외
@Transaction트랜잭션 : 업무처리 위한 논리적 작업 단위\+) 트랜잭션에 의한 관계는 필수적 관계 형태원자성 : 전부 처리되거나, 전부 안되거나일관성 : 트랜잭션 했다고 DB 모순되면 안됨격리성 : 중간에가외부에서 참조, 수정 불가영속성/지속성 : DB에 영속