분류 전체보기 썸네일형 리스트형 [DB] SubQuery 정의 : 하나의 쿼리 속에 다른 쿼리가 포함되어 있는 형태. 종류 - sing-row subquery - multi-row subquery : subquery의 결과가 둘이상의 row - ANY, ALL, IN, EXIST 등을 사용해야 함. 예제1) sing-row subquery #SCOTT의 급여보다 높은 급여를 받는 사람의 이름을 출력하시오. select ename from emp where sal > (select sal from emp where ename = 'SCOTT'); 예제2) multi-row subquery #부서별 이름 순서가 첫번째 사원 이름, 급여, 부서 번호를 출력하시오. select ename, sal, deptno from emp where (ename, deptno) .. 더보기 [DB] pk, fk (primary key, foreign key) primary key 정의 : 테이블 내에서 각 행을 고유하게 식별하는 역할 특징 - 해당 테이블에서 유일해야함 - null일수 없다. - 변경할수 없다. foreign key 정의 : 다른 테이블의 프라이머리 키를 참조하는 칼럼 특징 - 다른 테이블의 프라이머리 키를 참조 - null 가능 예) 해당 테이블에서 pk(primary key)는 employee_id이다. 또한 fk(foreign key)는 manager_id, department_id, job_id이다. 더보기 [DB] Self Join 정의 : 하나의 테이블을 여러 번 별칭(alias)을 사용하여 동일한 테이블 내에서 조인을 수행하는 것 주의점 - alias를 반드시 사용해야 함. 예제) #사원의 이름과 사원의 상사이름을 출력 select e.first_name as '직원 이름', h.first_name as '상사 이름' from employees e join employees h on (e.manager_id = h.manager_id); 더보기 [DB] Outer join 정의 : 두 테이블 간에 관련된 행을 결합하면서, 일치하지 않는 행도 결과에 포함하는 조인 종류 - left outer join 왼쪽의 모든 튜플은 결과 테이블에 나타남 오른쪽 테이블에 일치하는 행이 없는 경우, null값이 채워짐. - right outer join 오른쪽의 모든 튜플은 결과 테이블에 나타남 - full outer join 양쪽 모든 튜플은 결과 테이블에 나타남 예) left outer join 결과로 킴벌리는 department_id가 null 더보기 [DB] Natural join 정의 : 두 테이블에 공통 칼럼이 있으면 별다른 join 조건 없이 공통 칼럼처럼 묵시적으로 join 예) location id칼럼이 공통으로 존재. select * from departments natural join locations; 더보기 [DB] theta join 정의 : 임의의 조건을 Join 조건으로 사용가능 예제1) #사원의 이름과 사원의 급여 등급을 출력 select e.ename, s.grade from emp e, salgrade s where e.sal >= s.losal and e.sal 더보기 [DB] MySQL 함수들 concat() 정의 : 2개 이상의 표현을 합친다. 프로토타입 CONCAT(expression1, expression2, expression3,...) 예제 count() 정의 The COUNT() function returns the number of records returned by a select query. 프로토타입 COUNT(expression) 예제 더보기 [DB] INNER JOIN INNER JOIN 정의 : INNER JOIN은 매칭 조건에 부합하는 행들만을 선택하여 결과로 제공합니다. 예를 들어, 두 테이블 A와 B가 있을 때, A의 특정 열과 B. 의 특정 열이 일치하는 경우에만 해당 행을 결과로 반환합니다. 특징 - 가장 흔한 결합 방식. aka : simple join 사용 - n개의 테이블을 inner_join 할때, n-1개의 조건이 필요하다. 예제1 #사원의 이름과 그 사원이 속한 부서의 이름을 출력하시오. # 명시적 inner join select concat(employees.first_name, ' ', employees.last_name), departments.department_name from employees, departments where emplo.. 더보기 이전 1 2 3 4 ··· 6 다음