📚SQL
- 관계형 데이터베이스에서 데이터를 조회하거나 조작하기 위해 사용하는 표준 검색 언어
- 원하는 데이터를 찾는 방법이나 절차를 기술하는 것이 아닌 조건을 기술하여 작성

주요 용어
- 행 (Row)
- 컬럼 (Column)
- 기본키 (Primary Key)
- 외래키 (Foreign Key)
- Null (값이 없음)
- Java : 참조하는 것이 없다
- DB : 데이터가 없다 (값이 없다)
- 컬럼값
주요 데이터 타입
NUMBER : 숫자
CHARACTER
- CHAR : 고정길이 문자 (최대 2000바이트)
- VARCHAR2 : 가변길이 문자 (최대 4000바이트)
DATE : 날짜
LOB
- CLOB : 가변길이 문자 (최대 4기가 바이트)
- BLOB : Binary Data
SELECT
SELECT (DQL 또는 DML) : 조회
- 데이터를 조회(SELECT)하면 조건에 맞는 행들이 조회됨.
- 이때, 조회된 행들의 집합을 "RESULT SET" (조회 결과의 집합)이라고 함.
- RESULT SET은 0개 이상의 행을 포함할 수 있다.
왜 0개? 조건에 맞는 행이 없을 수도 있어서..
[작성법]
SELECT 컬럼명 FROM 테이블명;
➡️ 어떤 테이블의 특정 컬럼을 조회하겠다.
'' : ALL, 모든, 모두..
컬럼 값 산술 연산
- 컬럼값 : 테이블 내 한 칸 (== 한 셀)에 작성된 값(DATA)
- 산술 연산은 숫자(NUMBER 타입)만 가능하다!
날짜(DATE) 타입 조회
- SYSDATE : 시스템상의 현재 시간 (날짜)를 나타내는 상수
- 현재 시간만 조회하기
SELECT SYSDATE FROM DUAL;
DUAL(DUMMY TABLE) 테이블 : 가짜 테이블(임시 조회용 테이블)
-
날짜 + 산술 연산(+ , -)
SELECT SYSDATE -1, SYSDATE, SYSDATE +1 FROM DUAL;
-
날짜에 + / - 연산 시 일 단위로 계산이 진행된다!
컬럼 별칭 지정
SELECT 조회 결과 집합인 RESULT SET에 출력되는 컬럼명 지정
- 컬럼명 AS 별칭 : 별칭 띄어쓰기 X, 특수문자 X, 문자만 O
- 컬럼명 AS "별칭" : 별칭 띄어쓰기 O, 특수문자 O, 문자만 O
- AS는 생략 가능
SELECT SYSDATE -1 "하루 전", SYSDATE AS 현재시간, SYSDATE +1 내일 FROM DUAL;
JAVA 리터럴 : 값 자체를 의미
DB 리터럴 : 임의로 지정한 값을 기존 테이블에 존재하는 값처럼 사용하는 것