컴퓨터 과학/[프로그래머스] SQL DB Essentials

[2주차] 강의노트 DDL & DML

계란💕 2022. 3. 5. 12:03

2022-03-05 프로그래머스 2주차 강의 

0. 지난 과제 리뷰

  - 표준 SQL 기능은 여러 프로그램에서 사용할 수 있다.

  - 내가 쓰는 기능이 표준인지 파악한다.

  - 고정길이 문자열(항상 n개 문자를 저장) / 가변길이 문자열의 차이()

    -> CHAR(n): 최대 255문자 / VARCHAR(n): 최대 65,535문자

    -> 고정길이는 데이터를 읽어내는 게 빠르다. 단점: 디스크의 낭비?

    -> 가변길이는 디스크의 낭비가 적다. 단점: 

  - NOT NULL -> 컬럼제약방식이 가장 적합

    ->  그 외 -> ???방식

  - Constraint는 수정이 안 된다.

  - 컬럼별칭은 표준 SQL에서는 '출력 용도'로만 사용한다.(SELECT, ORDER BY 절에 사용가능)

    -> MySQL에서는 GROUP BY절에서는 허용한다. (WHERE절은 불가능)

    -> 표준SQL에서는 안된다는 것을 꼭 기억!

    -> GROUP BY절에는 ALIAS를 쓰지 않는 습관 가지는 것도 중요하다.

    -> WITH절을 이용한 임시테이블은 만든다. (속도는 좀 느리다 )

  - (중요) IS [NOT]NULL연산자 

    -> NULL 값과의 산술 연산은=> NULL

    -> NULL 값과의 비교 연산(> , >=< <, <=, =, <> )은 =>FALSE

    Ex) WHERE (속성이름) IS NULL

    잘못된 예) WHERE (속성이름) = NULL;  => 항상 false 

      -> 결과가 없다. (에러는 아니다.)

  - 갱신 명령어: 삽입/ 삭제/ 검색

    -> 프로그래머스에서 검색만 가능하다.

    -> 어떤 코딩테스트에서도 갱신 문제를 낼 수 없다.

    -> 3장은 과제가 없고 업무를 위해 공부하는 것이다.

  - 시스템마다 null이 가장 큰 값 또는 가장 작은 값으로 인식한다. 

  - WHERE 속성 IN( ...) .. 간결하다.

    -> LIKE(패턴 매치)로 바꿔도 괜찮다.

  - 정규식은 관계대수로 표현할 수 없다.

 

 

 

0.1 느낀 점

  - 지난 시간에 내주신 프로그래머스 코딩테스트 과제가 어려운 편은 아니라 모두 100점 이었다고 한다.

  - 다만, 데이터베이스그리는 예제를 내주셨는데 테이블을 만들고 매핑하는 것이 시간이 좀 걸렸다. 

  - 이번 주도 학습 우수자가 되어 기분이 좋았다.

  - 더 열심히하라는 의미로 받아들여서 남은 기간에도 집중해야겠다.

  - 다음주 부터는 프로그래머스 코딩 테스트 시간을 기준으로 평가한다고 하셨으니 내용을 확실히 숙지해야겠다.

  

 

1. 2주차 세션 리뷰

  - 영어권에서는 SQL이라고 안 하고 C query라고 읽는다.

  - 5, 6장은 난이도가 올라가니까 집중해서 해야한다.

 

 

 

 

 

본 게시글은 프로그래머스의 "학교 밖에서 듣는 전공 필수SQL/DB Essentials" 강의 내용을 토대로 업로드 했습니다.

(코드리뷰 개선 과정)

 

 

[스터디/2기] 학교 밖에서 듣는 전공필수 SQL/DB Essentials

⏰마지막 할인 중 2기 일정이 맞지 않다면 오픈 알림 신청하고 최저가에 수강하세요! 오픈 알림 신청 개발자에게 데이터베이스를 이해하는 능력은 필수! 데이터베이스의 기본 개념부터 ERD를 읽

programmers.co.kr

https://programmers.co.kr/learn/courses/13484