목록Database (25)
버글버글
▶ 날짜 함수 1. 현재 날짜와 시간 SELECT SYSDATE, SYSTIMESTAMP FROM DUAL; -- SYSDATE : 22/08/31 -- SYSTIMESTAMP : 22/08/31/ 10:34:35.912000000 +09:00 2. 원하는 형식으로 날짜와 시간 조회 - TO CHAR 함수 : 날짜를 문자로 변환해서 조회 SELECT TO_CHAR(SYSDATE, 'YYYY-MM-DD HH:MI:SS') -- 12시간 , TO_CHAR(SYSDATE, 'YYYY-MM-DD HH24:MI:SS') -- 24시간 FROM DUAL; 3. 단위(년,월,일,시,분,초) 추출 함수 - EXTRACT(단위 FROM 날짜) SELECT EXTRACT(YEAR FROM SYSDATE) AS 년도 , E..
▶ 숫자 함수 1. 제곱 POWER(A, B) : A의 B제곱 예시) SELECT POWER(2, 10) FROM DUAL; -- 1024 2. 제곱근(루트) SQRT(A) : 루트 A 예시) SELECT SQRT(25) FROM DUAL; -- 5 3. 절대값 ABS(A) : A의 절대값 예시) SELECT ABS(5), ABS(-5) FROM DUAL; -- 5, 5 4. 나머지 MOD(A, B) : A를 B로 나눈 나머지 예시) SELECT MOD(7, 2) FROM DUAL; -- 1 5. 부호 판별 SIGN(A) : A가 양수(+)면 1, 음수(-)면 -1, 0이면 0을 반환 예시) SELECT SIGN(5), SIGN(-5), SIGN(0) FROM DUAL; -- 1, -1, 0 6. 정수로..
▶ NVL함수 NVL(칼럼, 칼럼값이 NULL일 때 대신 사용할 값) 예시) - 함수 확인용 기초 데이터 -- 함수 확인용 기초데이터 DROP TABLE SAMPLE; CREATE TABLE SAMPLE( NAME VARCHAR2(20 BYTE), KOR NUMBER(3), ENG NUMBER(3), MATH NUMBER(3) ); INSERT INTO SAMPLE(NAME, KOR, ENG, MATH) VALUES(NULL, 100, 100, 100); INSERT INTO SAMPLE(NAME, KOR, ENG, MATH) VALUES('영숙', NULL, 100, 100); INSERT INTO SAMPLE(NAME, KOR, ENG, MATH) VALUES('정수', 100, NULL, 100);..
▶ DUAL 테이블 1. DUMMY 칼럼에 'X' 값을 하나 가지고 있는 테이블 2. 아무 의미 없는 테이블 3. 오라클에서는 FROM절이 필수이기 때문에, 테이블이 필요 없는 조회문에서 DUAL 테이블을 사용함 ▶ 타입 변환 함수 1. 숫자로 변환 - TO_NUMBER('문자열') : 문자열 형식의 숫자를 숫자 형식으로 변환 SELECT '100', TO_NUMBER('100') FROM DUAL; -- '100'(문자열), 100(숫자열) SELECT '1.5', TO_NUMBER('1.5') FROM DUAL; -- '1.5'(문자열), 1.5(숫자열) * 숫자와 '문자' 연산은 오라클에 의해서 숫자와 숫자 연산으로 수정된 뒤 처리됨 '문자' → TO_NUMBER('문자') 방식으로 자동으로 처리함..
▶ 로우(ROW) 생성 INSERT INTO 테이블명 (칼럼명1, 칼럼명2, ...) VALUES (로우명1, 로우명2, ...);
* HR 계정 작업 1. EMPLOYEES 테이블에서 JOB_ID 조회하기. (단, 동일한 JOB_ID는 한 번만 출력하기) 2. EMPLOYEES 테이블에서 EMPLOYEE_ID가 120인 사원 조회하기 3. EMPLOYEES 테이블에서 SALARY가 10000 이상인 사원 조회하기 4. EMPLOYEES 테이블에서 EMPLOYEE_ID가 151 ~ 200인 사원 조회하기 5. EMPLOYEES 테이블에서 FIRST_NAME이 'Steven', LAST_NAME이 'King'인 사원 조회하기 6. EMPLOYEES 테이블에서 JOB_ID가 'IT_PROG', 'ST_MAN'인 사원 조회하기 7. EMPLOYEES 테이블에서 HIRE_DATE가 2005년인 사원 조회하기 8. EMPLOYEES 테이블에서..
▶ DQL(Data Query Languge) 1. 데이터의 질의어 2. 테이블의 데이터를 조회/검색 3. 데이터베이스에 변화가 없으므로 COMMIT 없음 (트랜잭션의 대상이 아님) 4. 형식 SELECT 칼럼1, 칼럼2, ... FROM 테이블 [WHERE 조건식] [GROUP BY 그룹화] [HAVING 그룹화_조건식] [ORDER BY 정렬] 5. 실행 순서 ⑤ SELECT 칼럼 ① FROM 테이블 ② WHERE 조건식 ③ GROUP BY 그룹화 ④ HAVING 그룹화_조건식 ⑥ ORDER BY 정렬기준 ▶ 조회하기 SELECT 칼럼명 FROM 테이블명; 1) 테이블에 오너(OWNER)명시 SELECT 칼럼명 FROM SCOTT.테이블명; 2) 칼럼에 테이블 명시 SELECT 테이블명.칼럼명 FRO..
▶ 시퀀스 (SEQUENCE) 1. 일련번호를 생성하는 데이터베이스 객체 2. 자동으로 증가하는 번호를 생성 3. 기본키(PK)에서 주로 사용(인공키) 4. NEXTVAL를 이용하면 새로운 번호가 생성 5. CURRVAL를 이용하면 현재 번호를 확인 - 테이블 1개 당 시퀀스 1개씩 사용한다. ▶ 시퀀스 생성 형식 CREATE SEQUENCE 시퀀스_이름 START WITH 시작값 -- 생략하면 1, 생성 이후 ★수정 불가★ INCREMENT BY 증가값 -- 생략하면 1 MINVALUE 최소값 MAXVALUE 최대값 CACHE사용유무 -- NOCACHE 권장 CYCLE사용유무 -- PK에서 사용한다면 NOCYCLE 예시) -- 테이블 삭제 DROP TABLE EMPLOYEE; DROP TABLE DEP..