티스토리 뷰
목차
오라클(Oracle) | SQL 01 | SELECT(기본문법)
SELECT 개념 및 특징
1. DQL(DATA QUERY LANGUAGE)
DATA : 이론을 세우는 데 기초가 되는 사실·자료.
QUERY : 질문, 문의하다. 데이터베이스에 정보를 요청하는 것, 일종의 요청
LANGUAGE : 언어
즉 DB에서 데이터에 접근하고 프로그램과 DB사이에 데이터처리를 위해서 사용한다. 조작할 수 있는 언어와 인터페이스를 제공한다. 테이블 내의 데이터를 조회할 때 사용하는 SQL 언어의 유형이다. 주로 *CRUD 차원에서 INSERT, SELECT, UPDATE, DELETE 명령어를 다룬다고 할 수 있다.
2. 데이터 조회 시 사용
조회 결과물을 *RESULT SET 이라한다. *RESULT SET 은 SELECT의 결과를 저장하는 객체이다. 데이터 조회 시 데이터의 변경은 발생되지 않는다.
3. 표현법
SELECT 조회할 컬럼, 컬럼, .., 산술식, 함수식, .. AS "별칭"
FROM 조회할 테이블
WHERE 조회할 데이터의 조건식
GROUP BY 그룹핑시킬 컬럼, 컬럼, ..
HAVING 그룹에 대한 조건식
ORDER BY 정렬기준
👉 SQL명령어 : SELECT
✍ 명령문 : SELECT 컬럼명 ;
데이터베이스에서 데이터를 추출, 조회할컬럼, 컬럼, .., 산술식, 함수식, .. AS "별칭", 절차를 다 마친 후, 해당되는 칼럼들의 결과를 출력하라
👉 SQL 명령어 : FROM
✍ 명령문 : FROM ㅇㅇㅇ ;
다음과 같은 ㅇㅇㅇ에서 SELECT문에 작성한 컬럼의 데이터를 가져오겠다. 라는 뜻으로 SELECT과 무조건 함께 작성해주어야한다.
👉 SQL 명령어 : WHERE
✍ 명령문 : WHERE 조건식 ;
조건식 명령어로 조회할 데이터에서 '조건'을 정한 후 원하는 데이터만 조회 할 때 사용한다. 생략가능하다.
👉 SQL 명령어 : GROUP BY
✍ 명령문 : GROUP BY 컬럼명 ;
그룹으로 만들고 싶은 컬럼을 그룹핑시키는 명령어이다.
👉 SQL 명령어 : HVING
✍ 명령문 : HVING 조건식 ;
조건식 명령어로 GROUP BY를 통해 그룹핑 된 컬럼들에 원하는 데이터만 조회하겠다는 명령어이다.
👉 SQL 명령어 : ORDER BY
✍ 명령문 : ORDER BY 조건식 ;
정렬기준 명령어로 조회할 데이터를 내림차순으로 불러올지 오름차순으로 불러올지 기준을 입력하는 명령어이다. (기재하지 않으면 오름차순이 디폴트)
🚨 기본문법 작성 시 주의사항
Orecle 예약어(키워드), 테이블명, 컬럼명 들은 대소문자를 구분하지 않는다. (단, 실제 담겨있는 데이터값은 대소문자를 구분한다.) 테이블명 또는 컬럼명을 여러 단어로 조합할 경우 낙타표현법이 불가능하다. 👉 단어들마다 주로 _로 구분한다.
👀 그럼 해당 명령어들을 이용해 작성 시 데이터가 어떻게 조회되는지 알아보도록 하자
✔️ Oracle 명령어로 데이터 조회하는 방법
⏩ 예시1
-- EMPLOYEE 테이블에 전체 사원의 모든 컬럼(*) 조회
SELECT * FROM EMPLOYEE;
⏩ 예시2
-- EMPLOYEE 테이블에 전체 사원의 사번, 이름, 급여만 조회
SELECT EMP_ID, EMP_NAME, SALARY
FROM EMPLOYEE;
⏩ 예시3
-- JOB 테이블에 모든 컬럼 조회
SELECT * FROM JOB;
⏩ 예시4
-- JOB 테이블에 직급명 컬럼만 조회
SELECT JOB_NAME
FROM JOB;
⏩ 예시5
-- DEPARTMENT 테이블 모든 컬럼 조회
SELECT *
FROM DEPARTMENT;
⏩ 예시6
-- DEPARTMENT 테이블에 부서코드, 부서명 컬럼만 조회
SELECT DEPT_ID, DEPT_TITLE
FROM DEPARTMENT;
⏩ 예시7
-- EMPLOYEE 테이블에 사원명, 이메일, 전화번호, 입사일, 급여 조회
SELECT EMP_NAME, EMAIL, PHONE, HIRE_DATE, SALARY
FROM EMPLOYEE;
✔️컬럼값을 통해 산술연산하는 방법
SELECT 절에 산술연산식 작성해서 해당 컬럼을 통해 산술연산 결과를 조회할 수 있다.
⏩ 예시1
-- EMPLOYEE에 사원명, 사원의 연봉(급여*12) 조회
SELECT EMP_NAME, SALARY * 12
FROM EMPLOYEE;
⏩ 예시2
-- EMPLOYEE에 사원명, 급여, 보너스, 연봉 보너스 포함된 연봉((급여 + 보너스 * 급여) *12) 조회
SELECT EMP_NAME, SALARY, BONUS, SALARY * 12, (SALARY + SALARY * BONUS) * 12
FROM EMPLOYEE;
✅산술연산 과정 중 NULL이 포함될 경우 산술연산결과도 NULL로 조회한다.
⏩ 예시3
-- * SYSDATE : 현재 시스템의 날짜 및 시간
-- DUAL 테이블 == DUMMY 테이블 : 테이블이 필요없는 경우 작성하는 가상의 테이블
SELECT SYSDATE FROM DUAL;
SYSDATE : 현재 시스템의 날짜 및 시간
DUAL 테이블 == DUMMY 테이블 : 테이블이 필요없는 경우 작성하는 가상의 테이블
⏩ 예시4
SELECT EMP_NAME, HIRE_DATE, SYSDATE-HIRE_DATE
FROM EMPLOYEE;
SYSDATE - HIRE-DATE : 결과값은 일 단위로 나온다.
단, 시간까지 연산이 수행되므로 값이 지저분하게 나온다.
(링크발행)
👉 숫자 관련 함수를 이용하면 깔끔하게 처리할 수 있다.
✔️컬럼에 별칭 부여하는 방법
컬럼 조회 시 보여질 컬럼명에 별칭을 부여할 수 있다.
컬럼명 | 산술식 [AS] 별칭 | "별칭"
🚨유의사항🚨
부여할 별칭에 띄어쓰기 혹은 특수문자가 포함될 경우 반드시 " "로 별칭을 표현해야한다.
⏩ 예시1
SELECT EMP_ID 사번, EMP_NAME AS 사원명
FROM EMPLOYEE;
⏩ 예시2
SELECT EMP_ID, EMP_NAME, SALARY, SALARY * 12 "연봉(원)" , (SALARY + BONUS+SALARY) + 12 AS "총 소득"
FROM EMPLOYEE;
👀 SELECT 절이 긴 경우 가독성을 위해 아래와 같이 표현도 가능하다.
SELECT EMP_ID, EMP_NAME, SALARY
, SALARY * 12 "연봉(원)"
, (SALARY + BONUS+SALARY) + 12 AS "총 소득"
FROM EMPLOYEE;
👁️🗨️ 👀 💬 💯 ➕ ❗ ❓ ⭕ ☑️ ❌✍👉⏩🚨✔️✅
이전글
다음글
'Oracle SQL > SELECT' 카테고리의 다른 글
오라클(Oracle) | SQL 05 | SELECT(형변환함수) (0) | 2024.07.26 |
---|---|
오라클(Oracle) | SQL 04 | SELECT(날짜처리함수) (0) | 2024.07.26 |
오라클(Oracle) | SQL 03 | SELECT(숫자처리함수) (0) | 2024.07.26 |
오라클(Oracle) | SQL 02 | SELECT(문자처리함수) (0) | 2024.07.26 |
오라클(Oracle) SQL 07_SELECT(그룹함수) (0) | 2024.07.18 |
- Total
- Today
- Yesterday
- oracle 시스템 명령어
- 정보처리기능사 필기 문제
- 정보처리산업기사 자격증
- oracle 권한 부여 명령어
- 코딩활용능력자격증
- 코딩활용능력 자격증 기출문제
- ocalce 사용자 계정 삭제하는 방법
- 정보처리기능사 자격증 준비
- 파이썬 else 문
- 코딩활용능력 자격증
- 정보처리기능사 필기 준비
- 코딩활용능력 자격증 시험문제
- 코딩활용능력자격증 문제
- oracle 자원 사용 권한 주는 명령어
- 코딩활용능력 자격증 파이썬
- 파이썬 elif문
- 코딩활용능력자격증 문제풀이
- 정보처리기능사 시험 문제
- 코딩활용능력 기출문제
- 정보처리기능가 필기 시험문제
- oracle 사용자 계정 만들기
- oracle 권한주는 명령어
- 개발자 자격증 준비
- 정보처리기능사 준비
- 코딩활용능력 시험일정
- 코딩활용능력 자격증 조건문
- 정보처리기능사 자격증 문제
- oracla 사용자 계정 만드는 방법
- 정보처리 기능사 필기 준비
- Oracle
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |