땅지원
땅지원's Personal blog
땅지원
전체 방문자
오늘
어제
  • 전체 (353)
    • Frontend (2)
      • React (2)
    • Backend (90)
      • Java (16)
      • Python (19)
      • Spring (23)
      • Database (21)
      • Troubleshooting (8)
    • DevOps (27)
      • ELK (13)
    • CS (40)
    • OS (2)
      • Linux (2)
    • Algorithm (95)
      • concept (18)
      • Algorithm Problem (77)
    • 인공지능 (25)
      • 인공지능 (12)
      • 연구노트 (13)
    • 수업정리 (35)
      • 임베디드 시스템 (10)
      • 데이터통신 (17)
      • Linux (8)
    • 한국정보통신학회 (5)
      • 학술대회 (4)
      • 논문지 (1)
    • 수상기록 (8)
      • 수상기록 (6)
      • 특허 (2)
    • 삼성 청년 SW 아카데미 (6)
    • 42seoul (12)
    • Toy project (3)
    • 땅's 낙서장 (2)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

  • 20.11.6 BB21플러스 온라인 학술대회
  • 20.10.30 한국정보통신학회 온라인 학술대회

인기 글

태그

  • E
  • D
  • 이것이 리눅스다 with Rocky Linux9
  • ㅗ
  • I

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
땅지원

땅지원's Personal blog

SQL - DML(SELECT)
Backend/Database

SQL - DML(SELECT)

2022. 9. 8. 17:11

SELECT 데이터 검색

ALL 
‒ 결과 테이블이 튜플의 중복을 허용하도록 지정, 생략 가능
DISTINCT
‒ 결과 테이블이 튜플의 중복을 제거하도록 지정

 

* DISTINCT와 집계함수 같이 쓰려고 할 때

SELECT count(distinct name) from animal_ins where name is not NULL

* 시간의 FORMAT을 바꾸는 법

SELECT DATE_FORMAT(DATETIME, "%H") as HOUR, 
    COUNT(DATE_FORMAT(DATETIME, "%H")) as COUNT 
    FROM ANIMAL_OUTS 
        GROUP BY HOUR
        HAVING HOUR >= 9 
           AND HOUR < 20              
    ORDER BY HOUR ASC;

YEAR

YEAR(기준 날짜);

MONTH

MONTH(기준 날짜);

DAY

DAY(기준 날짜);
-- 또는 DAYOFMONTH(기준 날짜);

HOUR

HOUR(기준 날짜);

MINUTE

MINUTE(기준 날짜);

SECOND

SECOND(기준 날짜);

 

<AS 키워드>

결과 테이블에서 속성의 이름을 바꾸어 출력 가능

<산술식 사용>

<조건 검색>

WHERE 키워드 + 비교 연산자와 논리 연산자를 이용한 검색 조건

<LIKE 키워드>

부분적으로 일치하는 데이터를 검색

*고객 테이블에서 성이 김씨인 고객의 고객이름, 나이, 등급, 적립금을 검색

* 고객 테이블에서 고객아이디가 5자인 고객의 고객 아이디, 고객이름, 등급을 검색

<NULL 키워드>

IS NULL 키워드를 이용해 검색 조건에서 특정 속성의 값이 널 값인지를 비교

 

* 나이가 아직 입력되지 않은 고객의 고객이름을 검색

 

<ORDER BY 정렬>

오름차순(기본): ASC / 내림차순: DESC

NULL 값은 오름차순에서는 맨 마지막에 출력되고 내림차순에서는 맨 먼저 출력됨

여러 기준에 따라 정렬하려면 정렬 기준이 되는 속성을 차례대로 제시

 

* 주문 테이블에서 수량이 10개 이상인 주문의 주문고객, 주문제품, 수량, 주문일자를 검색

** 주문제품을 기준으로 오름차순, 동일 제품은 수량을 기준으로 내림차순 정렬

<집계 함수>

>

집계 함수는 널인 속성 값은 제외하고 계산함
WHERE 절에서는 사용할 수 없고 SELECT 절이나 HAVING 절에서만 사용 가능

 

* 한빛제과에서 제조한 제품의 재고량 합계를 제품 테이블에서 검색

 

<그룹 검색>

GROUP BY 키워드를 이용해 특정 속성의 값이 같은 튜플을 모아 그룹을만들고, 그룹별로 검색

HAVING 키워드를 함께 이용해 그룹에 대한 조건을 작성

그룹을 나누는 기준이 되는 속성을 SELECT 절에도 작성하는 것이 좋음

 

* 제품 테이블에서 제조업체별로 제조한 제품의 개수와 제품 중 가장 비싼 단가를 검색하되, 제품의 개수는 제품수 라는 이름으로 출력하고 가장 비싼 단가는 최고가라는 이름으로 출력

* 제품 테이블에서 제품을 3개 이상 제조한 제조업체별로 제품의 개수, 제품 중 가장 비싼단가를 검색

 

* 고객 테이블에서 적립금 평균이 1000원 이상인등급에 대해 등급별 고객 수와 적립금 평균을 검색

IN 연산자

여러개의 결과값이 나타나는 경우는 IN 사용

<내장함수>

 

'Backend > Database' 카테고리의 다른 글

View & Index, 백업과 복원  (0) 2022.09.14
SQL - DML(JOIN, SELECT 응용)  (0) 2022.04.19
SQL - DML(INSERT, UPDATE, DELETE)  (0) 2022.04.19
데이터베이스의 목적  (0) 2022.04.15
데이터베이스에 대해  (0) 2022.04.15
    'Backend/Database' 카테고리의 다른 글
    • View & Index, 백업과 복원
    • SQL - DML(JOIN, SELECT 응용)
    • SQL - DML(INSERT, UPDATE, DELETE)
    • 데이터베이스의 목적
    땅지원
    땅지원
    신입 개발자의 우당탕탕 기술 블로그

    티스토리툴바