MSSQL

MSSQL - 정렬 (ORDER BY), 그룹(GROUP BY), 그룹 조건(HAVING)

깐까망 2024. 3. 22. 18:04
728x90
반응형
SMALL

▶ORDER BY 는 조회를 할때 정렬을 하여 원하는 순서대로 조회를 할 수 있습니다.

. ASC,DESC를 두개를 사용을 할 수 있다. 

. ASC 오름차순으로 정렬이 되고 DESC는 내림차순으로 정렬이 됩니다.

. ASC는 생략이 가능합니다.

 

- 기본 문법

SELECT * 
FROM 테이블
WHERE 컬럼명 = 데이터 (생략가능)
ORDER BY 컬럼명

 

https://alstn4973.tistory.com/151

 

MSSQL - INSERT 삽입

▶ INSERT 문의 기본 . DML의 종류의 하나로 INSERT 삽입으로 분류가 됩니다. . 데이터베이스에 데이터를 입력하는 명령어입니다. 가장 기본적인 기능이고 굉장히 많이 쓰임으로 매우 중요합니다. - IN

alstn4973.tistory.com

EMP, DEPT테이블을 가지고 설명을 드리겠습니다!

 

SELECT * 
FROM EMP A
INNER JOIN dept B ON A.deptno = B.deptno
ORDER BY A.sal

 예시로 검색을 하면 

. sal의 기준으로 오름차순으로 검색이 됩니다.

SELECT * 
FROM EMP A
INNER JOIN dept B ON A.deptno = B.deptno
ORDER BY A.empno DESC

. empno를 내림차순으로 검색을 합니다.

이렇게 검색이 됩니다.

 

▶GROUP BY은 집계함수를 사용하여 그룹으로 묶어야 할때 사용을 합니다.

SELECT * 
FROM EMP A
 LEFT JOIN dept B ON A.deptno = B.deptno

. 검색을 하여 sal을 SUM을 하여 deptno를 검색을 하게 되면 중복이 되는 데이터가 많아 GROUP BY를 써서 검색을 합니다.

SELECT SUM(A.Sal) AS sal , A.deptno
FROM EMP A
 LEFT JOIN dept B ON A.deptno = B.deptno
 GROUP BY A.deptno

. SAL은 deptno기준에 따라 SUM이 계산이 되어 검색이 됩니다.

 

▶HAVING은 집계함수에 관하여 조건을 넣을때 사용합니다. GROUP BY가 있을때 HAVING을 사용을 할 수 있다.

SELECT SUM(A.Sal) AS sal , A.deptno
FROM EMP A
 LEFT JOIN dept B ON A.deptno = B.deptno
 GROUP BY A.deptno
 HAVING A.deptno = '1'

. GROUP BY 에 관한 조건을 걸어 검색을 할 수 있습니다.

. HAVING은 혼자 사용을 할 수가 없으며 꼭 GROUP BY와 함께 써야합니다!

728x90
반응형
LIST