Category

    [SQL] Sub Query와 종류 그리고 주의사항

    Sub Query 한번에 여러개의 쿼리를 처리할 수 있는 방법 Sub Query 주의사항 SubQuery 는 연산자 오른쪽에 위치해야 하며 반드시 괄호() 로 묶어야 한다. 특별한 경우를 제외하고는 SubQuery 절에는 Order By 가 올 수 없다. 단일행 SubQuery, 다중행 SubQuery 에 따라 연산자를 잘 선택해야 한다. Sub Query 종류 단일행 Sub Query 다중행 Sub Query 다중컬럼 Sub Query 상호연관 Sub Query 단일행 Sub Query 결과가 한개만 출력되는 것 단일행 Sub Query 의 WHERE 절에서 사용되는 연산자 = : 값이 같으면 true : 값이 서로 다른 값이면 true > : 왼쪽 피연산자의 값이 크면 true < : 왼쪽 피연산자의..

    [SQL] Join

    Join 하나의 테이블뿐만 아니라, 여러개의 테이블에서 정보를 가져와서 결과를 만드는 기법 관계형 데이터베이트(RDBMS)의 가장 핵심 기술 중 하나 ANSI Join 방식이 있고 DBMS 마다 특화된 방식이 있다. ex) Oracle Join 카티션 곱(Cartesian Product) WHERE 절에서 조인 조건을 주지 않은 것을 말하며 두 테이블의 데이터를 기준으로 가능한 모든 조합의 데이터가 조회된다. 복수개의 테이블에서 같은 이름의 필드가 있는 경우 반드시 서로 다른 테이블 별명(Alias)을 사용하여 접근해야한다. Join의 종류 INNER Join LEFT Join (LEFT OUTER JOIN) RIGHT Join (RIGHT OUTER JOIN) FULL OUTER JOIN CROSS J..

    [SQL] 그룹함수(Aggregate Function)

    그룹함수(Aggregate Function) 여러개의 레코드의 필드 값을 계산하여 값을 내는 함수, 다양한 그룹함수들이 있다. GROUP BY : 그룹을 묶는 단위 SELECT 절에 사용된 그룹함수 이외의 컬럼이나 표현식은 반드시 GROUP BY 절에 사용되야 한다. GROUP BY 절에 사용된 컬럼이 꼭 SELECT 절에 사용되지 않아도 된다. GROUP BY 절은 반드시 컬럼명이 사용되어야 한다. 별명(Alias)은 사용이 불가능하다. HAVING : 그룹함수 결과에 대한 조건절 그룹함수 부분은 WHERE 절에서 사용이 불가능하다. SELECT 쿼리문 순서 SELECT [컬럼명 또는 표현식] FROM [테이블 명, 뷰 명] WHERE [조건절] GROUP BY [그룹할 컬럼] HAVING [그룹함수 ..

    [SQL] 숫자(number) 단일행 함수와 날짜(date) 단일행 함수

    숫자(number) 단일행 함수 ABS() : n의 절대값 ABS(n) CEILING() : n보다 큰 수중 가장 작은 정수 CEILING(n) FLOOR() : n보다 작은 수중 가장 큰 정수 FLOOR(n) TRUNC() : 주어진 숫자를 버림 TRUNC(12.345, 2) → rs : 12.34 주로 소수점 절사 및 날짜(DATE)의 시간을 없앨 때 사용한다. ROUND() : n1을 n2의 십진 자리수로 반올림 ROUND(12.345, 2) → 12.35 MOD() : n2로 n1을 나눈 나머지 값 MOD(12, 10) → 2 SQL에서는 %(나머지 연산자)가 없다. POWER() : n1을 n2 제곱한 값 POWER(n1, n2) POWER(2, 1/2) : 루트2 POWER(27, 1/3) :..