본문 바로가기

Database/Oracle11

[Oracle] 5.Order by 1.Order by Order by는 정렬이라고 생각하면 편합니다. Group by의 친구느낌으로 어느 순서로 정렬하고자 할때 사용합니다 바로 예제로 이해해봅시다. 부서별 사원들의 인원수를 인원수가 많은 순으로 검색하고 싶습니다. 그러면 dno인원을 카운트하고 dno 그룹으로 묶어주면 부서별 사원들의 인원수를 알 수 있습니다. 여기에 추가 조건이 붙는데 인원수가 많은 '순서'로 데이터 추출을 원하는 겁니다 즉 6 - 5- 3 -0 순서를 원하는거죠 이때 Order by가 사용 됩니다. 기본적으로 정렬은 내림 차순입니다. 0 3 5 6 늘어가죠 하지만 저희는 6 5 3 0 순서를 원하니 desc를 붙여줘 오름차순이라고 말해줘야합니다. select count(dno) from employee group by.. 2021. 6. 7.
[Oracle] 4.Group by / Having 1.Group by Group by를 사용하기 전에 그룹 함수에 대해 알아보자. 함께 쓰이는 녀석이다. SUM, AVG, MIN, MAX, COUNT 요 녀석들이다. 예제를 통해 간단하게 GROUP BY를 분석해보자 Q1. 직업별로 평균급여의 데이터를 출력하고 싶다. 그럼 SELECT문에서 JOB, 그리고 그룹함수에 원하는 컬럼명을 ( ) 괄호로 쳐준다 SELECT JOB,AVG(SALARY) 그다음 EMPLOYEE에서 불러와야하니 FROM EMPLOYEE 그리고 GROUP BY를 통해 JOB을 그룹으로 묶어준다고 생각하자. 여기서 중요한 점은 그룹함수 AVG(SALARY)를 GROUP BY에 묶지 않는 것이고 그렇다면 그룹 함수를 제외하면 SELECT에 추출하고자 하는 컬럼명은 똑같이 GROUP BY .. 2021. 6. 4.
[Oracle] 3-1. Where Where 절을 사용하는 기능은 다음과 같습니다 WHERE 절 이용 -비교연산 -논리연산 -BETWEEN -IN 연산 -LIKE연산 ->비교 연산 예제는 이전 글 참고 바랍니다 1. 논리 연산 AND OR NOT Q1. JOB이 MANAGER이면서 SALARY가 1500이상인 사원의 이름을 출력하시오 해석 ) 이러면 조건이 2개 이상이죠 JOB - MANAGER와 SALARY >= 1500 요 두개의 조건을 AND 논리연산으로 묶어서 쿼리를 작성해봅시다. SELECT ENAME FROM EMPLOYEE WHERE JOB = 'MANAGER' AND SALARY >= 1500; OR 조건이면 둘중 하나를 만족하면 그 값이 나오겠죠? 2.BETWEEN Q2. 급여가 2000과 3000사이인 사원의 이름과 급.. 2021. 6. 4.
[Oracle] 3.Where 절 (조건) 1.Where 대망의 Where 조금 더 세분화된 데이터를 추출하기 위해서는 필수적인 기능이다 EX) SELECT * FROM EMPLOYEE WHERE ~ 위치는 FROM TABLE명 -> 뒤에 위치하며 특정 조건을 걸어주는데 사용된다 예를들어 EMPLOYEE 테이블에서 SALARY의 값이 1000이상인 사원이름만을 출력하고싶다면 ..? 'SALARY >= 1000' 조건을 생각 해 볼 수 있다. 바로 적용해보자 SELECT ENAME,SALARY FROM EMPLOYEE WHERE SALARY >= 1000; 사원의 이름과 급여를 같이 출력해 (SELECT ENAME,SALARY) EMPLOYEE 테이블로 부터 (FROM EMPLOYEE) 근데 어떤조건? SALARY 값이 1000이상인거! (WHER.. 2021. 6. 3.