SELECT *
FROM 테이블명
WHERE 조건 ;
- *(아스타리스크) 문제 풀이
- 직원 테이블의 모든컬럼 정보를 출력해주세요.
SELECT *
FROM 직원;
- 직원주소 테이블에서 모든 컬럼 정보를 출력해주세요.
SELECT *
FROM 직원주소;
SELECT DISTINCT 컬럼명
FROM 테이블명
WHERE 조건
- DISTINCT 문제 풀이
- 직원연락처 테이블을 로 모든 컬럼 정보를 출력해주세요
SELECT
FROM 직원연락처 ;
- 직원연락처 테이블에서 직원ID 정보만 중복없이 출력해주세요
SELECT DISTINCT 직원ID
FROM 직원연락처 ;
SELECT 부분의 컬럼에 새로운 별칭을 부여함.
SELECT 이외에도 사용가능!
SELECT 직원ID AS(default 가능) EMP_ID
FROM 직원
WHERE 조건 ;
SELECT 컬럼
FROM 테이블명
WHERE 조건 IS NULL (NULL 값 출력);
WHERE 조건 IS NOT NULL (NULL이 아닌 값 출력);
실습문제
--1. 직원 테이블에서 나이가 NULL이 아닌 정보만 모두 출력하세요
SELECT *
FROM 직원
WHERE 나이 IS NOT NULL;
--2. 직원 중에 입사일시가 정해지지 않은 직원만 출력하세요.
SELECT *
FROM 직원
WHERE 입사일시 IS NULL;
예) NVL( 컬럼명(NULL이면 대체 값으로 변환), 대체값 )
DECODE 함수는 프로그래밍에서의 if else 와 비슷한 기능을 수행한다. 간단한 사용방법은 아래와 같다.
예1) DECODE( 컬럼, 조건1, 결과1(TRUE), 결과2(FALSE) )
예2) DECODE( 컬럼, 조건1, 결과1, 조건2, 결과2, 조건3, 결과3.......... )
실습문제 (NULL, NVL, DECODE)
1. 직원 테이블에서 나이가 NULL이 아닌 정보만 모두 출력하세요
SELECT *
FROM 직원
WHERE 나이 IS NOT NULL;
2. 직원 중에 입사일시가 정해지지 않은 직원만 출력하세요.
SELECT *
FROM 직원
WHERE 입사일시 IS NULL;
3.직원 테이블에서 정보를 출력하되 나이가 정해지지 않은 대상은 일단 20으로 출력되로록 해주세요 (NVL사용)
SELECT 직원ID, 패스워드,이름,성별,NVL(나이, 20)
FROM 직원;
4.직원 테이블에서 성별이 '남'이면 '남성입니다'를 출력, 그렇지 않으면 '여성입니다.'를 츨력해주세요 (DECODE 활용)
SELECT 직원ID, 패스워드,이름, DECODE(성별,'남', '남성입니다.', '여성입니다.') AS 성별확인
FROM 직원;
자료형은 총 3가지!
문자형, 숫자형, 날짜형
(시험 밑줄 + 글자색)
- 갈색으로 표기된 함수는 굉장히 중요함. (위 이미지 참조)
LOWER : 모든 영문자 소문자로 변경
UPPER : 모든 영문자 대문자로 변경
SUBSTR : SUBSTR(str, x, y) : str 문자 데이터를 x자리 ~ y자리 까지 절단
TRIM(str) : str의 문자 데이터에서 양 끝 공백 제거
REPLACE : 예시1) REPLACE(주민등록번호,'-','') - 제거함
실습문제 (SUBSTR, REPLACE)
1.직원 테이블에서 직원ID, 주민등록번호를 출력하고, 주민등록번호
6자리만 이용해서 생년월일 이라는 컬럼을 만들어 AS 출력해주세요
SELECT 직원ID, 주민등록번호, SUBSTR(주민등록번호, 1, 6) AS 생년월일
FROM 직원;
2. 직원 연락처 테이블에서 직원들의 연락처를 '-' 모두 제외하고 출력해주세요.
SELECT 직원ID, 구분코드, 연락처, REPLACE(연락처,'-','') AS 연락처번호만
FROM 직원연락처;
MOD(int1 , int2) : int1을 int2로 나눈 나머지를 숫자형으로 출력
ROUND(int1, int2) : int1을 반올림하여 소수점 int2자리까지 출력
TRUNC(int1,int2) : int1을 소수점 int2자리까지 잘러서 버린후 출력
(중요) SYSDATE : 입력 시 현재 시간을 날짜형으로 출력
※ 보통 컬럼은 데이터가 저장된 시간을 많이 사용하기 때문에
SYSDATE는 꼭 기억하기!
LAST_DAY(date) : date의 날짜형 값의 해당 월 마지막 날짜를 출력
ADD_MONTHS(date , int) : date의 날짜형 값에서 int개월 수만큼 더해서 출력
특정 자료형 값으로 변경해주는 함수