SQL

· SQL/Oracle
Null이란 - 값이 없음을 나타내는 연산자로 DBMS에서 null값의 유무는 굉장히 중요하다. - null값을 허용하는 필드에 대한 연산이 일어날 경우, 값과 null의 연산의 결과가 null이 되어버리기 때문에 연산결과에 !중대한 영향!을 미치게 되므로 주의가 필요하다. Null 값으로 인한 문제 다음의 쿼리문을 보자. SELECT name, pay, bonus, pay + bonus FROM t_professeor; t_professeor 테이블에서 이름(NAME), 월급(PAY), 보너스(bonus), 월급+보너스(pay+bonus)를 출력하려고 한다. !! 하지만, t_professor테이블의 bonus 필드는 null값을 허용하는 필드다. 따라서, bonus에 null값이 들어있는 사람이 있다..
· SQL/Oracle
단일행함수와 그룹함수 단일행 함수(Single-Row Function)는 테이블의 n개의 레코드에 각각 적용되어 'n개의 결과값' 산출 그룹함수(Aggregate Function) 는 여러 개(레코드) 를 동시에 입력받아 ‘1개의 결과값’ 산출 단일행함수의 종류 1) 문자함수 (1) INITCAP(문자열 또는 컬럼명) 첫글자만 대문자로 출력하고 나머지는 소문자로 출력하는 함수 Ex) SELECT INITCAP('pretty girl') FROM DUAL; = 'pretty girl' 문자열에 대해 첫글자만 대문자로 출력하라 *dual 은 오라클에서 제공하는 단일 행, 단컬럼 더미테이블 (2) LOWER(문자열 또는 컬럼명) 입력값을 소문자로 변경해서 출력하는 함수 (3) UPPER(문자열 또는 컬럼명) ..
· SQL/Oracle
1. SELECT란 테이블의 데이터를 조회/질의하는 쿼리문에 쓰이는 명령어 2. SELECT의 사용 SELECT [컬럼명 또는 표현식] FROM [테이블명, 뷰명] ; * 컬럼명 또는 표현식 (1) ‘모든 컬럼’ 조회 : * 사용 Ex) SQL>SELECT * FROM t_emp; = t_emp 테이블의 모든(*) 컬럼 출력 (2) 원하는 컬럼만 조회 : 콤마(‘,’ ) 로 컬럼 나열 Ex) SQL>SELECT empno, ename FROM t_emp; = t_emp 테이블에서 직원번호(empno) 와 직원이름(ename)컬럼만 출력 (3) 컬럼명에 별명 붙여주기 : 본래 컬럼명 대신에 출력하고 싶은 컬럼명을 설정 = 별칭(alias) Ex) SQL> SELECT studno 학번, name 이름 FR..
· SQL/Oracle
데이터를 다루는 사이클 CRUD 1. 테이블에 레코드 추가 (INSERT) INSERT INTO [테이블이름] VALUES (값1, 값2... ) INSERT INTO [테이블이름] (컬럼1, 컬럼2... ) VALUES (값1, 값2... ) SQL> INSERT INTO phonebook (id, name, phone, email) VALUES (12, '오형돈', '010-1111-2222', 'jff@test.com'); SQL> INSERT INTO phonebook VALUES (23, 'jake', '010-1234-5678', 'test@test.com', 38, '', '2018-08-02'); * 컬럼이름이 생략된 경우 테이블이 정의된 컬럼 순서와 같은 순서로 입력 컬럼이름을 생략할 경..
· SQL/Oracle
1. TABLE 정의 테이블이 어떻게 구성될 것인지를 정의 즉 필드 설계 2. TABLE 생성 (CREATE) 테이블 생성 명령 CREATE TABLE [테이블이름] ( [컬럼이름] [*데이터타입] {*제약조건}, [컬럼이름] [*데이터타입] {*제약조건}, ); * 필드 데이터 타입 * 필드 제약조건 (Constraint) (1) PRIMARY KEY - 고유한 키 값이 되는 필드 (2) NOT NULL - 반드시 입력이 되어야 하는 필드 (즉, NULL로 두어서는 안되는 필수요소) (3) DEFAULT - 입력 안되면 기본값으로 지정된 값이 필드에 저장 테이블 생성 예 위의 1. 테이블정의에서 작성한 필드 설계 표를 토대로 테이블을 생성하면 다음과 같다. SQL> CREATE TABLE phonebo..
· SQL/Oracle
1. SQL이란? - 구조화된 질의 언어 (Structured Query Language) - 관계형 데이터베이스 시스템(RDBMS)에서 데이터를 다루기 위한 목적으로 설계된 프로그래밍 언어 - SQL문법으로 짜여진 쿼리문(Query)을 DBMS에서 실행하면 DBMS는 결과를 회신 (= '쿼리문을 DB에 날린다') 2. SQL의 분류 DDL (Data Definition Language) 사용자(user)에 대한 생성, 권한설정, 삭제 및 테이블의 생성,수정,삭제를 다루는 명령어 DML (Data Manipulation Language) 테이블 내의 데이터를 다루는 명령어 3. DBMS 계정의 종류 일반 사용자 계정 system 계정 : 관리자 계정, 하나의 system계정 = 하나의 관리자 sys 계정..