본문 바로가기

DB

[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] 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] 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.. 더보기
[DB] ERD (Lucidchart, MySQL-reverse engineering) 개요 ERD(Entity-Relationship Diagram, 개체-관계 다이어그램) 정의 : DB 설계 및 모델링에서 사용되는 시각적 도구. 목적 - 요구 사항을 기반으로 DB의 구조를 논리적으로 설계하고 개발하는데 도움 - 설계 단계에서 중요 - SQL 쿼리를 작성하는데도 중요하 참고자료가 된다. 요소 - 개체 : 시스템 내에서 독립적으로 존재 - 관계 : 개체들 사이의 연결관계 - 속성 : 개체가 가지는 특성, 테이터 또는 세부정보 Tool Lucidchart의 툴을 추천합니다. 무료플랜이 있고, 굉장히 다양한 종류의 다이어그램을 지원합니다. 웹 브라우저에서 작동합니다. Intelligent Diagramming | Lucidchart Intelligent Diagramming | Lucidcha.. 더보기