SQL
-
day10 - 오라클 (CREATE, ALTER, RENAME, MODIFY, 제약조건, 외래키, 인덱스, 뷰, 시퀸스)KIC/DB 오라클 2021. 7. 13. 00:03
[CREATE] create table ddl_test (no number(3), name varchar2(10), birth date default sysdate); -> 일반 테이블을 생성한다. [테이블 생성시 주의사항] 1. 테이블 이름은 반드시 문자로 시작해야 한다. 즉 숫자로 시작할 수 없다. 단 숫자가 포함되는 것은 가능 특수 문자도 가능하지만 테이블 생성시 ""(겹 따옴표)로 감싸야 하며 권장하지 않는다. 2. 테이블 이름이나 컬럼 이름은 최대 30bytes 까지 가능 즉 한글로 테이블 이름을 생성할 경우 최대 15글자까지 가능 3. 테이블 이름은 한명의 사용자가 다른 오브젝트들의 이름과 중복 사용 할 수 없다. 4. 테이블 이름이나 오브젝트 이름을 오라클이 사용하는 키워드로 사용하지 않는 ..
-
day06_2 - 오라클 (join 문, Cartesian Product/ 카티션 곱/ CROSS, equi join/등가 조인)KIC/DB 오라클 2021. 7. 1. 00:30
[join 문] -> 조인으로 컬럼수가 늘어난다고 보면 된다. select * from emp; -> row 14개 select * from dept; -> row 4개 select * from emp, dept; - >row 14* 4 개 = 56개 select e.*, d.* from emp e, dept d; [Cartesian Product/ 카티션 곱/ CROSS JOIN] [equi join (등가 조인)] -> 학생의 이름과 학과를 같이 표시하도록 조인을 건다. select s.name, s.deptno1, d.deptno, d.dname from student s, department d where s.deptno1 = d.deptno; [EX1] -- oracle join 문법 selec..
-
day05 - 오라클 (형변환 함수, 날짜 타입, CASE 함수, Group 함수, group by, having)KIC/DB 오라클 2021. 6. 30. 23:09
[TO_CHAR 함수]아래 예 참조 [날짜 타입] select to_date('2012/3/01', 'yyyy:mon:dd") from dual; select to_date('2012/03/01', 'yyyy:mm:dd') from dual; select to_date('2012/3/01', 'yyyy:mm:dd') from dual; select to_date('20120301', 'yyyy:mm:dd') from dual; select to_date('120301', 'yyyy:mm:dd") from dual; select to_date('120301', 'yy:mm:dd') from dual; select to_date('20120301', 'yy:mm:dd') from dual; [CASE 함수]..
-
day04_2 - 오라클 (데이터 형, to_char, to_date, nvl 함수, nvl2 함수, decode 함수)KIC/DB 오라클 2021. 6. 24. 01:35
[오라클의 데이터 형] [묵시적 자동 형변환] select 1 + '1' from dual; -> 숫자 1과 문자 1 계산 해서 2가 나왔다. -> 문자를 숫자로 형변환 해서 계산 [MM/MON/MONTH] -> MM: 월을 숫자 2자리로 표현 (04) -> MON: 월을 뜻하는 영어 3글자로 표시 (OCT) -> MONTH: 월을 뜻하는 영어 이름 전체를 표시 (OCTOBER/8월) -> 한글로 설정한 경우 MON, MONTH 둘 다 월로 표시 [to_char] -> 문자로 형변환 해주는 함수 -> 두번째 인자로 형식을 지정해줄 수 있다. ex) select name, to_char(hiredate,'yyyy-MM-dd') 입사일, to_char((pay*12), '9,999,999') 연봉, to_c..
-
day03_3 - 오라클 (숫자 함수, round, trunc, mod, ceil, floor, power)KIC/DB 오라클 2021. 6. 24. 00:45
[round 함수] -> 반올림 함수 -> 두번째 인자로 반올림 자리 설정 가능 --ex) select round(12.345) round1, round(12.345, 2) round2, round(12.345, -1) round3, from dual; [dual 테이블이란] -> 오라클 자체에서 제공되는 테이블 -> 간단하게 함수를 이용해서 계산 결과값을 확인 할 때 사용하는 테이블 [trunc 함수] -> 버림 함수 -> 두번째 인자로 버림 자리 설정 가능 --ex) select trunc(12.345) trunc1, trunc(12.345, 2) trunc2, trunc(12.345, -1) trunc3, from dual; [modm ceil, floor 함수] --ex) select mod(12..
-
day03_2 - 오라클 (문자 함수, initcap, lower, upper, length/lengthb, concat, substr, instr, lpad, ltrim, replace)KIC/DB 오라클 2021. 6. 24. 00:25
[문자함수] [initcap 함수] -> 첫 글자만 대문자로 출력하고 나머지는 전부 소문자로 출력하는 함수 ->형식: initcap(문자열 또는 컬럼명) emp 테이블을 사용하여 부서가 10번인 사원의 이름을 첫 글자만 대문자로 출력 --initcap select initcap(ename) from emp where deptno = 10; [lower 함수] -> 입력되는 값을 전부 소문자로 변경하여 출력 ->형식: lower(문자열 또는 컬럼명) --lower select lower('Pretty girl') from dual; [upper 함수] -> 입력되는 값을 전부 대문자로 변경하여 출력 ->형식: upper(문자열 또는 컬럼명) --upper select upper('Pretty girl') ..
-
day03_1 - 오라클 (집합 연산자, union, inersect, minus)KIC/DB 오라클 2021. 6. 24. 00:16
[집합 연산자] -> 집합 연산자는 컬럼의 개수가 같아야 한다. -> 컬럼 네임은 달라도 괜찮지만 대응되는 컬럼의 데이터 타입이 같아야 한다. [union] -> UNION 은 결과를 합칠 때 중복되는 행은 하나만 표시 -> UNION ALL 은 중복제거를 하지 않고 모두 합쳐서 표시 --ex) --union/union all select studno, name, deptno1 from student where deptno1 = 101 union select profno, name, deptno from professor where deptno = 101; select studno, name, deptno1 from student where deptno1 = 101 union all select prof..