2021.08.10 TIL

새롭게 배운 것 Done

운동

독서

알고리즘

SQL 고득점 kit - GROUP BY 예제 - 입양 시각 구하기(2)

MYSQL WITH 재귀(RECURSIVE) 쿼리

WITH RECURSIVE REC AS
(
    SELECT 0 AS 시간
    UNION ALL
    SELECT 시간 + 1 FROM REC WHERE 시간 < 23
)
SELECT REC.시간, COUNT(HOUR(OUTS.DATETIME)) AS 건수
FROM REC
LEFT JOIN ANIMAL_OUTS as OUTS on REC.시간 = HOUR(OUTS.DATETIME)
GROUP BY REC.시간;

스크린샷, 2021-08-10 15-16-02


코딩

MySQL

클라우드

AWS

Docker

20210810-163240

테이블 필드의 중요 속성

Primary Key

Foreign Key

NOT NULL

DEFAULT value

예제 데이터 설명 및 sql로 테이블 생성

20210810-173005

CREATE TABLE session (
  id INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
  user_id INT NOT NULL,
  created TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  channel_id INT NOT NULL,
  --PRIMARY KEY(id), 이렇게 여기서 기본키 설정도 가능
  FOREIGN KEY(channel_id) REFERENCES channel(id)
);

CREATE TABLE channel (
  id INT AUTO_INCREMENT PRIMARY KEY,
  channel VARCHAR(32) NOT NULL
);

깨달은 점 FEELING