'SQL 첫걸음' 공부 -Day 6

윤현묵·2021년 11월 3일
0

MySQL

목록 보기
7/12
post-thumbnail

[학습 DAY - 6]

19강 물리삭제와 논리삭제

  • 두 종류의 삭제방법
    -. 물리삭제: SQL의 DELETE 명령을 사용해 직접 데이터를 삭제
    -. 논리삭제: 테이블에 '삭제플래그'와 같은 열을 미리 준비하여 테이블에서 실제로 행을 삭제하는 대신, UPDATE 명령을 이용해 '삭제플래그'의 값을 유효하게 갱신해두자는 발생에 의한 삭제방법

  • 삭제방법 선택하기
    -. SNS 서비스처럼 사용자의 개인정보를 다루는 시스템에서는 사용자가 탈퇴한 경우 데이터 삭제(물리삭제)
    -. 쇼핑 사이트의 주문 취소의 경우 데이터 삭제(논리삭제)
    -. 논리삭제로 인해 DB사용량이 늘어나 저장공간이 작아지는 경우 물리 방법으로 데이터 삭제
    -. 물리삭제와 논리삭제는 용도에 맞게 선택

20강 행 개수 구하기 - COUNT

  • COUNT로 행 개수 구하기
    -. 인수로 주어진 집합의 개수를 구해 반환
    -. 집계함수는 집한 안에 NULL 값이 있을 경우 무시 (전체를 구할 때는 포함)

    • SELECT COUNT(*) FROM sample51; (모든 행 개수 구하기, 모든 열 = 테이블 전체로 인식)

    • SELECT * FROM sample51 WHERE name='A';
  • DISTINCT로 중복 제거

    • SELECT ALL name FROM sample51; (모든 행 반환)
    • SELECT DISTINCT name FROM sample51; (중복 행 제거)

21강 COUNT 이외의 집계함수

  • SUM으로 합계 구하기
    -. SUM 집계함수를 사용해 집합의 합계를 구할 수 있음
    -. 수치형만 가능, 문자열형이나 날짜시간형의 집합에서 합계를 구할 수 없음

    • SELECT SUM(quantity) FROM sample51;
  • AVG로 평균내기
    -. SUM / COUNT로 평귱을 구할 수 있지만 AVG로도 가능
    -. SUM과 동일하게 수치형만 가능

    • SELECT AVG(quantity), SUM(quantity)/COUNT(quantity) FROM sample51;
  • MIN, MAX로 최소값, 최대값 구하기
    -. 수치형, 문자열형, 날짜시간형에도 사용 가능

    • SELECT * FROM sample51;
    • SELECT MIN(quantity), MAX(quantity), MIN(name), MAX(name) FROM sample51;
profile
진정성 있는 개발자를 꿈꾼다

0개의 댓글