본문 바로가기
Database/MySQL

데이터 출력 / 정렬 (SELECT / ORDER BY)

by 컴돈AI 2024. 2. 27.

목차

    테이블 데이터 출력(SELECT)

    • 테이블 데이터 모두 출력
      • SELECT * FROM 테이블명
      • SELECT * FROM 데이터베이스명.테이블명
    • 테이블 특정 컬럼만 출력
      • SELECT 컬럼명 FROM 테이블명
    • 테이블 특정 컬럼 여러 개 출력
      • SELECT 칼럼명1, 컬럼명2 FROM 테이블명
    • 결과 테이블에서 투플의 중복을 제거하고 한 번씩만 출력되도록 하기
      • SELECT DISTINCT 컬럼명1, 컬럼명2 FROM 테이블명
    • AS를 통해 컬럼명의 이름을 다른 이름으로 지정해 출력해 줄 수 있습니다.
      • SELECT 컬럼명1, 컬럼명2 AS "다른컬럼명2" FROM 테이블명

    출력한 데이터 정렬(ORDER BY)

    • 테이블 특정 컬럼 기준 오름차순 정렬
      • SELECT * FROM 테이블명 ORDER BY 컬럼명 (ASC)
      • 기본값은 ASC 순임.(ABCD, 1234, ...)
    • 테이블 특정 컬럼 기준 내림차순 정렬
      • SELECT * FROM 테이블명 ORDER BY 컬럼명 DESC
      • (DCBA, 4321 , ...)
    • 테이블 컬럼별 우선순위로 정렬
      • SELECT * FROM 테이블명 ORDER BY 컬럼명1 ASC, 컬럼명2 DESC (, 컬럼명3 ASC , ...)
        • 컬럼명 1 기준으로 오름차순으로 데이터가 정렬된 뒤, 컬럼명 1이 동일한 데이터에 대해서는 컬럼명 2 기준으로 내림차순 정렬됩니다.
      • 예시
        • 카테고리 내용이 같으면, 가격 DESC 순으로 정렬해 줍니다.

    예제

    • product 테이블의 상품명과 가격컬럼 출력해보기
      • SELECT 상품명, 가격 FROM product
    • product 테이블의 모든 컬럼을 출력하는데 가격 낮은 순으로 정렬해보기
      • SELECT * FROM product ORDER BY 가격
    • product 테이블의 모든 컬럼을 출력하는데 가격 낮은 순으로, 가격이 같으면 카테고리가 가나다순으로 뜨도록 정렬해보기
      • SELECT * FROM product ORDER BY 가격 ASC, 카테고리 ASC
    • employee 테이블의 모든 컬럼을 출력하는데 근무기간이 적은 사람이 맨 위에 와야 하고, 같은 근무기간인 경우 이름을 가나다 순으로 정렬하기
      • SELECT * FROM employee ORDER BY 근무기간, 이름
    • 제품 테이블에서 제조업체 속성을 중복 없이 검색해보기
      • SELECT DISTINCT 제조업체 FROM 제품
    • 제품 테이블에서 제품명과 단가 속성을 검색하는데, 단가에 500을 더해 "조정 단가"라는 새 이름으로 출력해보기
      • SELECT 제품명, 단가+500 AS "조정 단가" FROM 제품

    출처