TIL

230220 [SQL, Java] (ORDER BY / MVC 패턴)

하차모 2023. 2. 20. 17:28

1. SQL

1-1. 데이터 조회 (SELECT)

1-1-1. 중복 제거 (DISTINCT)

  DISTINCT가 붙으면 조회하는 모든 컬럼에 중복이 제거됨

SELECT DISTINCT DEPTNO
FROM EMP;

1-1-2. 조건이 여러 개인 데이터 조회

-- 급여가 450이거나, 500이거나 또는 1000인 사원의 사번, 사원명, 급여를 조회
SELECT EMPNO, ENAME, SAL
FROM EMP
WHERE SAL = 450 OR SAL = 500 OR SAL = 1000;

SELECT EMPNO, ENAME, SAL
FROM EMP
WHERE SAL IN (450, 500, 1000);

-- 급여가 450, 500, 1000이 아닌 데이터 조회
SELECT EMPNO, ENAME, SAL
FROM EMP
WHERE SAL NOT IN (450, 500, 1000);

1-1-3. 정렬 (ORDER BY)

  +) 오름차순(ASC) & 내림차순(DESC)

-- 모든 사원의 정보를 급여 기준으로 정렬해서 조회
SELECT *
FROM EMP
ORDER BY SAL ASC; --오름차순(ASC) 정렬이 기본값이기 때문에 ASC는 생략 가능

-- 급여 기준 내림차순 정렬
SELECT *
FROM EMP
ORDER BY SAL DESC;
-- 부서번호가 10번이 아니고, 커미션이 NULL이 아닌 직원의 사번, 이름, 부서번호, 커미션 조회
-- 부서번호 기준 내림차순으로 정렬
SELECT EMPNO, ENAME, DEPTNO, COMM
FROM EMP
WHERE DEPTNO != 10 
AND COMM IS NOT NULL
ORDER BY DEPTNO DESC;

 

2. MVC 패턴

  M(Model) : 실제 핵심 기능 (DB 작업)

  V(View) : 사용자가 보는 화면 (jsp)

  C(Controller) : 페이지의 흐름을 담당 (서블릿)

 

  DTO(Data Transfer Object) : 변수와 getter&setter, 필요한 데이터를 객체로 묶어서 보내주는 역할

  DAO(Data Access Object) : 실제 기능을 메소드로, 데이터베이스에 접근할 수 있는 객체