1. 엑셀을 이용하여 QUERY 만들기 넣을 데이터 목록을 정렬하여 한쪽에 입력해 놓는다. 그리고 INSERT문을 작성한다. EX ) B3에 데이터를 넣었으니 F3에 INSERT문을 작성해놓는게 편리하다. ="INSERT INTO DIRECTOR( DIRECTOR_ID, DIRECTOR_NAME) VALUES ( DIRECTOR_ID_SEQ.NEXTVAL, '" & B3 & "');" INSERT 앞에는 쌍따옴표 '" & B3 & "' 부분에서는 홑따옴표 쌍따옴표 & B3 & 쌍따옴표 홑따옴표 순서이다. INSERT INTO DIRECTOR( DIRECTOR_ID, DIRECTOR_NAME) VALUES ( DIRECTOR_ID_SEQ.NEXTVAL, '" & 까지 입력한 후 B3를 클릭하고 나머지를 입..
INSERT, UPGRADE,K DELETE 는 반드시 COMMIT을 해줘야 한다. COMMIT을 하지 않으면 결과가 반영되지 않는다. 1. INSERT - 데이터 삽입 1 2 3 4 5 6 7 8 9 INSERT INTO GRADE( GRADE_ID , GRADE_TITLE ) VALUES ( GRADE_ID_SEQ.NEXTVAL , '제한 상영가' ) ; Colored by Color Scripter cs * SEQUENCE : 숫자가 일정한 규칙에 의해서 연속적으로 증가시켜야 될 경우 사용한다. 필요한 PK 에 SEQUENCE를 만들어 놓으면 편리하다. GRADE_ID_SEQ.NEXTVAL 은 GRADE_ID_SEQ를 일정한 규칙으로 증가시킨다. GRADE_ID_SEQ는 아래의 설정으로 만들어진 S..
DECODE IF문과 비슷한 의미 DECODE(A, B, 'C') : A와 B가 같다면 'C'를 출력한다. DECODE 함수 안에 DECODE 함 수를 중첩해서 사용 할 수도 있다. CASE-WHEN DECODE와 비슷하지만 비교연산을 할 수 있다는 장점이 있고, 조건을 만족하면 값이 아닌 쿼리를 수행 할 수도 있다. EX ) WHEN 100 = (SELECT 98 FROM DUAL) THEN DUAL은 의미하는게 없다. 실습1 : 직업이 AD_PRESS 인 사람은 A 등급을, ST_MAN 인 사람은 B 등급을, IT_PROG 인 사람은 C 등급을, SA_REP 인 사람은 D 등급을, ST_CLEAK 인 사람은 E 등급을 기타는 0 을 부여하여 조회한다. 이를 DECODE와 CASE-WHEN을 이용하여 ..
EXISTS / NOT EXISTS 존재 여부 확인 SELECT COLUMNS FROM TABLE WHERE EXISTS ( SUBQUERY ) EXISTS : SUBQUERY의 ROW가 한 개 이상 존재한다면 SELECT를 수행한다. NOT EXISTS : SUBQUERY의 ROW가 존재하지 않는다면 SELECT를 수행한다. 실습1 - NOT EXISTS 연산자를 사용하여 매니저가 아닌 사원 이름을 조회한다. 1 2 3 4 5 6 7 8 9 SELECT LAST_NAME , FIRST_NAME FROM EMPLOYEES E WHERE NOT EXISTS ( SELECT '1' FROM EMPLOYEES E1 WHERE E.EMPLOYEE_ID = E1.MANAGER_ID ) ; Colored by Co..
VIEW : 가상의 테이블을 생성한다. 복잡한 쿼리를 단순하게 만들 수 있다. 실습1 - LAST_NAME 에 u 가 포함되는 사원들과 동일 부서에 근무하는 사원들의 사번 및 LAST_NAME 을 조회한다. 두 가지 방법으로 풀 수 있다. 첫번째로는 서브쿼리를 이용한 풀이 1 2 3 4 5 6 7 8 9 SELECT EMPLOYEE+OD , LAST_NAME FROM EMPLOYEES WHERE DEPARTMENT_ID IN ( SELECT DEPARTMENT_ID FROM EMPLOYEES WHERE LAST_NAME LIKE '%u%' ) ; Colored by Color Scripter cs 두번째 방법은 View를 이용한 1 2 3 4 5 6 7 8 9 10 SELECT DISTINCT EMPLO..
테이블(TABLE) 조인 테이블 간 Primary Key - Foreign Key 로 연결하여 관련된 정보들을 가져온다. 실습1 - DEPARTMENTS의 PK인 DEPARTMENT_ID와 EMPLOYEES의 DEPARTMENT_ID로 관계가 형성되어 있다. 이를 이용하여 전체 사원들의 사원 번호, LAST_NAME, 부서명, 부서 번호를 조회한다. 1 2 3 4 5 6 7 8 9 -- 전체 사원들의 사원 번호, LAST_NAME, 부서명, 부서 번호를 조회한다. SELECT EMPLOYEE_ID , LAST_NAME , DEPARTMENT_NAME , D.DEPARTMENT_ID -- 두 개의 테이블에 존재한다면, 어떤 테이블에서 가져오는지 정확히 명시해야한다. (보통 PK로 존재하는 데이터를 가져온다..
서브쿼리 : 쿼리 안의 쿼리 조회하려는 대상을 알지 못할 때 조회하려는 대상이 너무 많을 때 조회하려는 대상이 유동적일 때 사용한다. SELECT [COLUMN], [SUB QUERY] FROM [TABLE] WHERE [COLUMN OPER SUBQUERY] WHERE 안에 서브쿼리를 만드는 실습들 실습1 - SALARY가 최소인 사원을 조회하고 싶을 때 1 2 3 4 5 6 7 SELECT * FROM EMPLOYEES WHERE SALARY = ( SELECT MIN(SALARY) FROM EMPLOYEES ) ; Colored by Color Scripter cs 결과가 하나일때는 WHERE 절에서 = 를 쓰지만, 여러 개의 결과를 얻고 싶을 땐 IN을 써서 조건을 만든다. 실습2 - 평균 연봉의..
1. IS NULL - 데이터가 NULL인 / IS NOT NULL - NULL이 아닌 1 2 3 4 5 6 7 8 -- 매니저가 없는 사람들의 LAST_NAME 및 JOB_ID 를 조회한다. SELECT LAST_NAME , JOB_ID FROM EMPLOYEES WHERE MANAGER_ID IS NULL OR MANAGER_ID = '' -- 이 줄을 추가하면 완벽히 NULL인 것을 걸러낸다. ; Colored by Color Scripter cs 2. DISTINCT - 중복을 제거한다. GROUP BY와의 차이점은 DISTINCT는 집계를 못한다. GROUP BY는 집계를 할 수 있다. 실습1 - MANAGER_ID의 중복을 제거 1 2 3 4 SELECT DISTINCT MANAGER_ID F..
1. SELECT - 하나 이상의 테이블에서 여러 데이터를 가져온다. SELECT [ COLUMN ] FROM [ TABLE ] 1 2 3 4 5 6 -- Employees 테이블에서 LAST_NAME, SALARY, COMMISSION_PCT를 가져온다. SELECT LAST_NAME , SALARY , COMMISSION_PCT FROM EMPLOYEES ; Colored by Color Scripter cs 2. ORDER BY - 가져온 테이블을 정렬한다. SELECT [COLUMN] FROM [TABLE] ORDER BY [COLUMN] 정렬 방식에는 ASC, DESC가 존재한다. ASC : 오름차순 DESC : 내림차순 1 2 3 4 5 6 7 -- Employees 테이블에서 연봉이 1200..
- Total
- Today
- Yesterday
- DFS
- mybatis
- 자바
- RequestMapping
- onBackPressed
- boj
- maven
- table
- indexOf
- AlertDialog.Builder
- DP
- INSERT
- Spring
- order by
- sort
- 이클립스
- servlet
- BFS
- controller
- algorithm
- list
- REDIRECT
- 예외처리
- 안드로이드 스튜디오
- 안드로이드 비콘
- Baekjoon Online Judege
- onPostExecute
- java
- jsp
- restfb
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |