DB/SQL
-
TCLDB/SQL 2024. 7. 8. 19:41
/*TCL (TRANSACTION CONTROL LANGUAGE) : 트랜잭션 제어 언어Transaction : 업무, 처리변경된 사항을 묶어서 하나의 트랜잭션에 처리트랜잭션에서 데이터 변경 대상 : INSERT, UPDATE, DELETE (DML)Ex) INSERT INTO 값 추가 ---------------------------------> DB 반영 X INSERT INTO 값 추가 -----트랜잭션에 추가-------COMMIT---> DB 반영 O INSERT INTO 10 번 값 추가 ---> 1 개 트랜잭션에 10 개 추가 -- ROLLBACK ---> DB 반영 X 1) COMMIT : 메모리 트랜잭션에 임시 저장된 데이터를 DB 에 완전히 추가 ..
-
SUBQUERYDB/SQL 2024. 7. 5. 21:36
/***** SUBQUERY 실습 *****/-- 1. 각 직원의 급여가 부서 평균 급여보다 높을 직원들의 이름과 급여 조회하기-- 1) 부서 평균 급여 구하기SELECT AVG(SALARY) FROM EMPLOYEE E WHERE DEPT_CODE = E.DEPT_CODE;-- 2) 직원들의 이름과 급여 조회SELECT EMP_NAME, SALARY FROM EMPLOYEE WHERE SALARY > 3089820;-- 3) 서브쿼리 이용해서 한번에 쿼리 작성하기SELECT EMP_NAME, SALARY FROM EMPLOYEE WHERE SALARY > (SELECT AVG(SALARY) FROM EMPLOYEE E WHERE DEPT_CODE = E.DEPT_CODE);-- 2. 최대 급여를 받는 ..
-
JOINDB/SQL 2024. 7. 4. 19:53
/*[JOIN]- 하나 이상의 테이블에서 데이터를 조회하기 위해 사용- 수행결과는 하나의 RESULT SET 으로 나옴- 관계형 데이터베이스에서 SQL 이용해 테이블간 관계를 맺는 방법- 관계형 데이터베이스는 최소한의 데이터를 테이블에 담고 있어 원하는 정보를 테이블에서 조회하려면 한 개 이상의 테이블에서 데이터를 읽어와야 하는 경우가 많음 이 때, 테이블간 관계를 맺기 위한 연결고리 역할이 필요한데 두 테이블에서 같은 데이터를 저장하는 컬림이 연결고리가 됨 등가 JOIN --> 내부조인(INNER JOIN), JOIN USING, ON, 자연조인(NATURAL JOIN)포괄 JOIN --> 왼쪽외부조인(LEFT OUTER), 오른쪽외부조인(RIGHT OUTER), 전체외부조인(FULL OU..
-
GROUPBY절, HAVING절DB/SQL 2024. 7. 3. 21:39
/*[SELECT 문 정리]순서5 SELECT 컬럼명, 컬럼명 AS "별칭" , 컬렴명, ...1 FROM 참조할 테이블명2 WHERE 컬럼명 | 함수식 비교연산자 비교값3 GROUP BY 그룹을 묶을 컬럼명4 HAVING 그룹 함수식 비교연산자 비교값6 ORDER BY 컬럼명 | 별칭 | 컬럼순번 정렬방식-- SELECT WHERE 절 까지만 존재할 경우순서3 SELECT 컬럼명 -> 마지막에 결과를 보여주겠다1 FROM 테이블명2 WHERE 조건식-- SELECT ORDER BY 절 까지만 존재할 경우 (WHERE X)순서2 SELECT 컬럼명1 FROM 테이블명3 ORDER BY 정렬기준-- SELECT ORDER BY 절 까지만 존재할 경우 (WHERE O)순서3 SELECT 컬럼명1 FROM ..
-
날짜DB/SQL 2024. 7. 2. 22:01
날짜TO_DATE('작성하고자하는문자열','작성할패턴');문자열을 기록하고자 하는 패턴 형태로 해석해서 DATE 타입으로 변경하는 함수TO_DATE('2000-01-01','YYYY-MM-DD');- 2000년 1월 1일 생을 8자리로 기록하는 방법TO_DATE('21/12/12','RR/MM/DD'); -> RR 대신 YY 해도 문제는 없음- 2021년 12월 12일 생을 6자리로 기록하는 방법- ORACLE 에서 네 자리수 연도를 두 자리수 연도로 변환하면서- 특정 패턴을 나타내기 위해 사용된 형식- Y2K 문제를 해결하기 위해 설계된 규칙Y2K : YEARS 2 KIILO : 2000 년대형식 YY : 년도 (짧게) 2024 -> 24 으로 표기할 때 YYYY : 년도 (길게) 2024 으로..
-
INSERTDB/SQL 2024. 7. 1. 20:05
/*******DML : 데이터 조작 언어테이블에 값을 삽입하거나 수정하거나 삭제하는 구문INSERT : 삽입UPDATE : 수정DELETE : 삭제한 후에 반드시 COMMIT ROLLBACK 진행할 것COMMIT ROLLBACK - 팀원이나 다른 사람과 상의 후 진행개발 연습이기 때문에 단독으로 진행해도 좋음********/CREATE TABLE EMPLOYEE2 AS SELECT * FROM EMPLOYEE;SELECT * FROM EMPLOYEE2;CREATE TABLE DEPARTMENT2 AS SELECT * FROM DEPARTMENT;SELECT * FROM department2;------------------------------------ 1. INSERT -- 테이블에 새로운 행..
-
SELECTDB/SQL 2024. 6. 26. 21:27
SELECT(조회)지정된 테이블에서 원하는 데이터를 선택해서 조회하는 SQL작성된 구문에 맞는 행, 열 데이터가 조회됨 -> 조회된 결과 행의 집합 == RESULT SET(결과 집합) - RESULT SET 은 0 행 이상이 포함될 수 있음 -> 조건에 맞는 행이 없을 수 있다는 것*//*[SELECT 작성법 -1 (기초)]SELECT 컬럼명, 컬럼명, ... FROM 테이블명 -> 지정된 테이블 모든 행에서 컬럼명이 일치하는 컬럼값 조회 테이블의 모든 행 모든 컬럼 조회하는 방법 *(asterisk) : 모든, 포함하다를 나타내는 기호*/-- EMPLOYEE 테이블에서-- 모든 행의 사번(EMP_ID), 이름(EMP_NAME), 급여(SALARY) 조회SELECT EMP_ID,..
-
DDL(CREATE)DB/SQL 2024. 6. 25. 21:03
올림 CEIL반올림 ROUND버림 FLOOR오름차순 ASC(ASCENDING)내림차순 DESC(DESCENDING)자료형NUMBER : 숫자형(정수, 실수) 실수 자리 : 소수 자리 몇 번째 까지 가능한지 NUMBER(2,2) -> (0 ~ 99, 0.99) 즉 0 ~ 99.99 까지 가능CHAR(크기) : 고정길이 문자형 -> 현재 사용 거의 하지 않음VARCHAR : 이전버전 사용 많이 하지 않음VARCHAR2 : 최신버전 제일 많이 사용 가변길이 문자형 CHAR VS VARCHAR2 고정 가변 Ex) CHAR(10BYTE) VARCHAR2(10BYTE) CHAR = 1; -> 1..