SQLD/SQL 기본과 활용
SELECT 문, 산술연산자, 합성연산자
DevPing9_
2020. 8. 19. 00:40
# SELECT [ALL/DISTINCT] 칼럼명, 칼럼명, ...
# [ ] 안의 표현식은 Option이며 Default 값은 ALL 이다.
# FROM 절에서 ALIAS를 사용한다면, SELECT 절에는 반드시 ALIAS명을 사용해야 한다.
# ALL 이 DEFAULT 옵션
# DISTINCT 는 중복제외 (Pandas 의 unique)
SQL> SELECT [ALL/DISTINCT] col1, col2, col3
FROM tab1;
# 예시
SQL> SELECT DISTINCT PLAYER_ID, POSITION_
FROM PLAYER;
# 실행결과
PLAYER_ID POSITION_
--------- -----------
10102 DF
13244 CB
16123 GK
30242 FW
43321 MF
...
5개의 행이 선택되었습니다.
# SELECT * FROM 테이블명
- 테이블 내 모든 데이터 출력
- 문자 및 날짜데이터는 좌측정렬 된 상태로 출력
- 숫자 데이터는 우측정렬 된 상태로 출력
# ALIAS (가명) 부여
- 컬럼명 뒤에 AS 키워드 사용
- 부여할 ALIAS가 공백 또는 특수문자를 포함할 경우 " " 로 묶어 사용
# Oracle : " "
# SQL Server : " ", ' ', [ ]
SQL> SELECT DISTINCT PLAYER_NAME AS 선수명, POSITION_ AS "포 지 션"
FROM PLAYER;
# 출력결과
선수명 포 지 션
--------- -----------
10102 DF
13244 CB
16123 GK
30242 FW
43321 MF
...
5개의 행이 선택되었습니다.
# 산술 연산자
- (), *, /, +, - 의 우선 순위
SQL> SELECT PLAYER_NAME AS 선수명, HEIGHT - WEIGHT AS "키-몸무게"
FROM PLAYER;
# 출력결과
선수명 키 - 몸무게
--------- -----------
1 107
2 91
3 102
4 105
5 91
...
6113개의 행이 선택되었습니다.
# 합성 연산자
- 문자열 연결
# Oracle : CONCAT(str1,str2) 함수 , || 연산자
# SQL Server : CONCAT(str1,str2) 함수 , + 연산자
# Oracle
SQL> SELECT PLAYER_NAME || '번 선수의 키는 ' || HEIGHT || " 입니다." AS 신체정보
FROM PLAYER;
# 출력결과
신체정보
---------------------------
1번 선수의 키는 182 입니다.
2번 선수의 키는 192 입니다.
3번 선수의 키는 176 입니다.
4번 선수의 키는 175 입니다.
5번 선수의 키는 172 입니다.
...
6113개의 행이 선택되었습니다.
추가)
# Oracle은 SELECT 절과 FROM 절 모두 SELECT문장의 필수 절로 지정함
# 테이블이 필요없는 SQL 문장의 경우에도 DUAL이라는 테이블을 필수적으로 지정해야 함
# DUAL 테이블은 DUMMY 테이블이며 모든사용자가 액세스 가능한 USER SYS가 소유한 테이블이다.
# Built-in Function(내장함수)
SQL> SELECT LENGTH ('HeeSun You') AS LEN
FROM DUAL;
#실행결과
LEN
---
10
1 개의 행이 선택되었습니다.
SQL> SELECT TRIM('a' FROM 'aHeeSun Youa') AS TRIMED
FROM DUAL;
#실행결과
TRIMED
----------
HeeSun You
1 개의 행이 선택 되었습니다.
SQL> SELECT * FROM DUAL;
#실행결과
DUMMY
-----
X
1개의 행이 선택되었습니다.
# SQL Server는 SELECT절만으로 SQL 문장이 수행 가능하므로 dummy 테이블이 필요없음
728x90