>, >=, <, <=, =, != or <>
🚨 그동안 만든 테이블을 모두 DROP하고 시작하자!
회원테이블(MEMBER)에서 성별 마일리지 합계를 조회하시오
Alias는 구분, 마일리지 합계이며 구분란에 ‘여성회원’,’남성회원’을 출력
SELECT CASE WHEN SUBSTR (MEM_REGNO2,1,1)='2'THEN
'여성회원'
ELSE
'남성회원'
END AS 구분,
SUM(MEM_MILEAGE) AS 마일리지합계
FROM MEMBER
GROUP BY CASE WHEN SUBSTR (MEM_REGNO2,1,1)='2'THEN
'여성회원'
ELSE
'남성회원'
END;
상품테이블(PROD)에서 판매가가 20만원 이상인 상품을 조회하시오.
Alias는 상품코드,상품명,분류코드,매입가,판매가
SELECT PROD_ID AS 상품코드,
PROD_NAME AS 상품명,
PROD_LGU AS 분류코드,
PROD_COST AS 매입가,
PROD_PRICE AS 판매가
FROM PROD
WHERE PROD_PRICE >= 200000;
(판매가가 모두 20만원 이상이다)
사원테이블에서 부서가 30~70번에 소한 사원정보를 조회하시오
Alias는 사원번호, 사원명, 부서코드, 입사일
SELECT EMPLOYEE_ID AS 사원번호,
FIRST_NAME||''||LAST_NAME AS 사원명,
DEPARTMENT_ID AS 부서코드,
HIRE_DATE AS 입사일
FROM HR.EMPLOYEES
// HR이 아닌 다른계정으로 접속해있는 상태일때 이렇게 작성, 이후로는 컬럼명만 기술해도 된다
WHERE DEPARTMENT_ID>=30 AND DEPARTMENT_ID<=70
ORDER BY 3;
// 부서코드 기입 순서가 3번이므로 DEPARTMENT_ID가 3인거나 마찬가지, 기본 ASC이므로 오름차순 정렬
// WHERE절이 FALSE면 SELECT절 실행 안하기때문에 ID가 90인 애들은 안나오는것
사원테이블에서 50번부서에 속한 사원 중 급여가 6000이상인 사원을 조회
Alias는 사원번호, 이름, 급여
SELECT EMPLOYEE_ID AS 사원번호,
FIRST_NAME||''||LAST_NAME AS 이름, //EMP_NAME으로 칼럼 바꿔주면 ㅇㅋ
SALARY AS 급여
FROM HR.EMPLOYEES
WHERE DEPARTMENT_ID=50
AND SALARY>=6000;
FIRST_NAME과 LAST_NAME이 나눠져있어서 귀찮아!
사원테이블에 사원명 컬럼(EMP_NAME)을 VARCHAR(80)로 추가하고 FIRST_NAME과 LAST_NAME을 결합하여 사원명으로 입력
ALTER TABLE HR.EMPLOYEES ADD(EMP_NAME VARCHAR2(80));
// NULL대신 이름을 결합하여 추가해넣는것이 목표
UPDATE HR.EMPLOYEES
SET EMP_NAME=FIRST_NAME||''||LAST_NAME;
회원테이블에서 ‘충남’에 거주하거나 직업이 ‘주부’인 회원을 조회하시오. Alias는 회원번호,회원명,주소.직업,마일리지
SELECT MEM_ID AS 회원번호,
MEM_NAME AS 회원명,
MEM_ADD1||''||MEM_ADD2 AS 주소,
MEM_JOB AS 직업,
MEM_MILEAGE AS 마일리지
FROM MEMBER
WHERE MEM_ADD1 LIKE '충남%'
OR MEM_JOB='주부';