- SELECT 구문
- 데이터베이스의 테이블에 저장된 데이터를 조회하기 위해 사용. 조회 결과로 Record Set 반환
- Record Set 에는 Record 가 포함되어 있으며, 이 Record 는 0개가 나올 수 있다.
- SELECT 구문에는 SELECT 절, FROM 절, WHERE 절, ODER BY 절 등으로 구성되어 있다.
- SELECT 절에는 Record Set 에 포함시킬 컬럼 정보를 작성한다. ( * 은 모든 컬럼을 가르킴)
- FROM 절에는 데이터를 조회할 테이블명을 작성
- WHERE 절에는 테이블에 저장된 데이터 중 특정 조건 해당하는 데이터만 Record Set 에 포함시키기 위해 사용
- ORDER BY 절은 최종 Record Set의 데이터를 특정 컬럼을 기준으로 정렬하기 위해 사용
DESC 를 쓰면 내림차순으로 정렬
<SELECT 절>
- SELECT 절에 사용한 컬럼명은 Record Set 으로 반환할 때 새로운 별칭을 부여하여 반환할 수 있다.
- 별칭은 공백으로 구분하거나 AS 를 사용하여 구분할 수 있다.
- 별칭에 띄어쓰기가 포함된 경우 " " 를 이용해 구분할 수 있다.
- SELECT 절에 명시하는 컬럼은 다른 컬럼과 조합해서 하나의 컬럼으로 반환할 수 있다.
- SELECT 절에 명시하는 컬럼과 숫자 리터럴과 연산을 수행할 수 있다.
- 중복값(Record Set 에 대한 중복)을 제거한 Record Set을 반환할 수 있다.
<WHERE 절>
- 테이블에 있는 데이터 중 Record Set 에 포함할 데이터를 선별하기 위한 조건을 사용
- 조건식이 사용되며, 조건식에는 다양한 연산식을 활용하게 된다.
#연산자
1. 비교 연산자
같다 : = 다르다 : != , <> 크다 : > 작다 : <
크거나 같다 : >= 작거나 같다 : <=
2. 논리 연산자
: 다른 조건식의 결과로 반환된 true, false 에 대한 연산을 수행
AND : 모든 결과가 true 일 때 해당하는 Record를 Record Set에 반영
OR : 하나라도 true 일 때 해당하는 Record를 Record Set에 반영
NOT : 부정 (선택된 Record가 아닌 Record를 Record Set에 반영)
3. BETWEEN 연산자
: 지정한 범위에 해당하는 데이터를 조회하기 위한 연산으로 사용
4. IN 연산자
: 연속되지 않은 범위에 대한 연산으로 사용. 소괄호 안에 해당하는 값만 Record Set에 포함된다.
5. LIKE 연산자
: 문자열에 대한 패턴 검색을 하기 위해 사용. 와일드카드문자 %, _ 사용해서 검색 가능
6. IS NULL, IS NOT NULL
: NULL 데이터를 가지는 또는 가지지 않은 Record 를 조회하기 위해 사용하는 연산자
비교연산(=) 으로는 NULL 데이터를 찾을 수 없음
- 함수
- 단일함수 (문자, 숫자, 날짜, 형변환 함수) : 레코드 하나에 결과 값 하나가 나오는 함수
- 그룹함수 : 레코드 여러개에 결과 값 하나가 나오는 함수
1. 문자 함수 : 문자열에서 일부 문자열만 잘라내거나, 공백제거, 대소문자변환, 일부 내용 변경 등의 기능 제공
LENGTH : 문자열 길이
INSTR(컬럼명, ' ') : ' ' 안의 문자 위치 찾기
SUBSTR(컬럼명, 숫자) : 문자열 잘라내기
UPPER : 대문자변환 / LOWER : 소문자변환 / INITCAP : 단어의 첫번째 문자만 대문자로 변환
CONCAT(컬럼명1, 컬럼명2) : 컬럼명1과 컬럼명2 결합
RPAD(컬럼명, 숫자, ' * ') : 오른쪽에 숫자만큼 여백(여백에 * 같은 다른문자 추가도 가능)추가
LPAD : 왼쪽에 여백추가
TRIM : 공백 삭제
REPLACE(컬럼명, '원래문자', '바꿀문자') : 문자열 일부 내용 변경
'국비' 카테고리의 다른 글
11.14 국비학원 28일차 (ROLLUP, CUBE, GROUPING 함수, DDL-TABLE) (0) | 2022.11.15 |
---|---|
11.11 국비학원 27일차 (숫자,날짜,형변환 함수, 그룹함수, GROUP BY 절, HAVING절) (0) | 2022.11.12 |
11.9 국비학원 25일차 (도커 설치) (0) | 2022.11.10 |
11.8 국비학원 24일차 (오라클 설치, SQLdeveloper & DBeaver 설치) (0) | 2022.11.09 |
11.4 국비학원 23일차 (평가2) (0) | 2022.11.07 |