basic/sql 11

SQL[09] - 트랜젝션, 서브쿼리, 시퀀스

*오라클 oracle 기준 트랜젝션 Transaction 데이터 처리의 한 단위 데이터의 일관성을 보증 COMMIT : 변경사항 저장 ROLLBACK : 변경사항 취소 SAVEPOINT 백업 서브쿼리 쿼리문 안에 다시 쿼리문을 작성하는 형태 * 주의 사항 **반드시 괄호로 묶고, WHERE 절 에서는 연산자 오른쪽에 위치해야 한다 SELECT 컬럼명 FROM (서브쿼리문); SELECT 컬럼명 FROM (서브쿼리문) WHERE 조건; SELECT 컬럼명 FROM 테이블명 WHERE 조건컬럼 (서브쿼리문); ⌨ FROM절에 서브쿼리문이 오는 경우 ∙ EMP 테이블에서 EMPNO, ENAME, JOB, SAL 컬럼중 SAL이 3000이상일 경우 전부 출력하기 ▸EMPNO, ENAME, JOB, SAL만 EM..

basic/sql 2021.06.01

SQL[08] - 테이블/컬럼/레코드, 생성/추가/삭제/수정 ⋯

*오라클 oracle 기준 들어가기에 앞서 간단 용어 정리👀 ❔ 테이블 행, 열의 구조로 데이터 저장 ▸열 COLUMN : 속성 ▸행 ROW, 레코드 : 값 ❔ 데이터 타입 ▸문자 : varchar2(글자길이값) ▸숫자 : number ▸날짜 : date 테이블 생성 : CREATE CREATE TABLE 테이블명 ( 컬럼명 컬럼데이터타입 옵션들, 컬럼명 컬럼데이터타입 옵션들,... ); 옵션 : 제약조건 Constraint 부적절한 자료(데이터)가 입력되는 것을 방지하기 위해서 여러가지 규칙을 적용해 놓은것 NOT NULL : NULL 값이 들어올 수 없다. UNIQUE : 중복 요소가 올수 없다. CHECK : 조건 체크 등 검사하고 들어갈 수 있는것 DEFAULT : 값을 추가하지 않을시 들어가는 ..

basic/sql 2021.05.31

SQL[07] - JOIN절

JOIN 절 # EQUI join 등가 조인 ∙ 테이블과 테이블을 연결하여 필요한 정보를 반환한다. ∙ A테이블 B테이블을 JOIN할시 두 테이블을 이을 수 있는 컬럼이 각 테이블에 있어야 한다. A에서 이름 칼럼을, B에서는 주소 칼럼을 가져와 새로운 정보를 반환하고 싶을때 JOIN을 사용하면 된다. A,B TABLE에는 공통적인 ID 칼럼을 가지고 있다. 이 ID칼럼을 통해 두 테이블을 JOIN하여 원하는 값을 추출하면 된다. ✔ Oracle JOIN SELECT a.col1, b.col1 FROM table1 a, table2 b WHERE a.co2 = b.coq2; SELECT a.이름, b.주소 FROM A a, B b WHERE a.id = b.id; ✔ ANSI JOIN SELECT a.c..

basic/sql 2021.05.31

SQL[06] - 일반함수, 그룹함수, GROUP BY, HAVING절

*오라클 oracle 기준 일반함수 NVL(컬럼명, DEFAULT값) : 컬럼에 NULL이 있을경우 DEFAULT값으로 대치 NVL2(컬럼명1, 컬럼명2, 컬럼명3) : 컬럼1이 NULL이 아닐경우 컬럼2가 값, NULL이면 컬럼3 그룹함수 (복수행함수) 여러건의 데이터가 함수로 입력 * > NULL 값도 포함 컬럼명 > NULL 제외 #그룹함수의 종류 함수명 설명 COUNT 행, 레코드의 개수 SUM 값의 합 AVG 값의 평균 MAX 최대값 MIN 최소값 MEDIAN 값의 범위에 대한 중간 값 ⌨ 일반함수 사용해보기 NVL, NVL2 -- COMM 컬럼에 NULL이 있을경우 0으로 대치 SELECT EMPNO, ENAME, COMM, NVL(COMM,0) FROM EMP; --#1 -- COMM 컬럼이..

basic/sql 2021.05.31

SQL[05] - 형변환 함수(숫자,문자,날짜 서로 형변환 하기), 오라클의 데이터 타입, 오라클 숫자 표현식

*오라클 oracle 기준 오라클의 데이터 타입 char(n) : n만큼의 고정길이 문자 저장. 최대 200byte varchar2(n) : n만큼의 변하는 길이의 문자 저장. 최대 4000byte number(p, s) : 숫자. p는 전체 자릿수 1~38, s 소수점이하 자리수 -84~127. 매개변수 생략가능 date : 날짜 타입 7byte long : 가변길이 문자 저장. 최대 2gb. 많이 쓰이진 않음 clob : 가변길이 문자 저장. 최대 4gb raw(n) : 원시 이진 데이터로. 최대 2000byte long raw(n) : 2gb bfile : 외부파일에 저장된 데이터로 최대 4gb 형변환 함수 1. 자동형변환 2. 명시적형변환 TO_CHAR(숫자) : 숫자 > 문자, 날짜 > 문자 T..

basic/sql 2021.05.31

SQL[04] - 함수 (문자함수, 숫자함수, 날짜함수)

*오라클 oracle 기준 SQL 함수 단일행 함수 • 한번에 한개의 행에 대한 처리를 한번 해주는 함수 • 한개행의 데이터받아 실행 ▸ 한개의 결과 • 종류 : 문자함수, 숫자함수, 날짜함수, 일반함수, 변환함수 ⋯ 복수행 함수 (그룹함수) • 한번에 여러개의 행에대한 처리를 한번 해주는 함수 • 여러행의 데이터를 받아 함수 실행 ▸ 한개의 결과 • 종류 : COUNT, SUM, AVG, MAX, MIN ⋯ 💡 dual : 가상의 테이블 원하는 값을 보고싶은데 기존의 테이블이외에 가상의 테이블을 만들어 조회 가능하다. Ex) FROM dual > 기존의 테이블명 쓰는것과 똑같이 작성해주면 됨 문자함수 함수 설명 LOWER('문자') 소문자로 변경 UPPER('문자') 대문자로 변경 LENGTH('문자'..

basic/sql 2021.05.28

SQL[03] - 연산자(비교, 논리, 조건)

*오라클 oracle 기준 *예제의 테이블은 전부 emp 기준으로 한다 조건연산자 ∙ WHERE 절 : 조건 주기 비교 연산자 ∙ > >= = R 이후 순서의 알파벳 / R보다 작다 > R 이전 순서의 알파 SELECT empno, ename, sal FROM emp WHERE ename >= 'R'; -- 날짜도 가능하다. 홑따옴표로 묶어주고 년-월-일 또는 년/월/일 -- MAC은 01-JAN-82 / 일-달 영어약자-년 SELECT empno, ename, hiredate FROM emp WHERE hiredate >= '82-01-01'; ⒊ ..

basic/sql 2021.05.27

SQL[02] - 데이터 조회하기, select 절

*오라클기준 📌 ∙ 주석▸-- ∙ 여러줄 주석 ▸/**/ ∙ 실행 ▸ 실행하고하는 문장에 커서 놓고 Ctrl + Enter ▸ 실행 ∙ 문장 마지막에 ; (세미콜론) 꼭꼭 적어주기, 세미콜론까지가 한문장으로 구분된다. 데이터 조회 • 대소문자 구분없음 (값 빼고) • 키워드랑 데이터의 이름or값 띄어쓰기 주의 • 전체조회 ▸ * • 문자열 데이터는 ' ' 홑따옴표로 묶기 SELECT [컬럼명 또는 표현식] FROM [테이블명 또는 뷰명]; Ex) 테이블명 : emp / 컬럼과 값이 아래와 같이 구성되어 있음 ⒈ 모든 칼럼 조회 Ex) emp 테이블의 전체 데이터 조회하기 SELECT * FROM emp; 더보기 ⒉ 원하는 칼럼 조회 Ex) emp 테이블의 ENAME 컬럼 조회하기 SELECT ENAME ..

basic/sql 2021.05.27

SQL[01] - 테이블(table), 컬럼(column), 레코드(row)

테이블(table), 컬럼(column), 레코드(row) 란? 이것은 하나의 데이터 테이블(table) 이라고 한다. 맨윗줄 고유번호, 이름, 성별, 생년월일 이것을 컬럼(column) 이라고 한다. 처음 작업시 컬럼(column) 을 작업해야 하며, 값들을 카테고리화 해놓은거라고 생각하면 쉽다. 컬럼이름을 고유번호,이름 등으로 만들어 각 열이 생성되고, 그안에 관련된 값을 넣는것 이다. 한줄, 한행은 레코드(row)라 하며, 한사람의 정보가 추가되면 레코드가 늘어난다고 생각하면 된다. 정리 빨간색으로 세로로 묶인 이것이 컬럼(column) 파란색으로 한줄 묶인게 레코드(row)

basic/sql 2021.05.27