본문 바로가기
DB/SQL

[프로그래머스] [SQL] Group By 모음

by 은세라 2021. 8. 5.

https://programmers.co.kr/learn/courses/30/parts/17044

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

--고양이와 개는 몇 마리 있을까
SELECT ANIMAL_TYPE, COUNT(*) AS count 
FROM ANIMAL_INS 
GROUP BY ANIMAL_TYPE

--동명 동물 수 찾기
SELECT NAME, COUNT(*) AS COUNT 
FROM ANIMAL_INS 
GROUP BY NAME
HAVING COUNT(NAME)>1
ORDER BY NAME

--입양 시각 구하기(1)
SELECT HOUR(DATETIME) AS HOUR, COUNT(DATETIME) AS COUNT 
FROM ANIMAL_OUTS
WHERE HOUR(DATETIME)>=9 AND HOUR(DATETIME)<=19
GROUP BY HOUR
ORDER BY HOUR ASC

--입양 시각 구하기(2)
SET @hour = -1;

SELECT @hour := @hour + 1 AS HOUR, (
    SELECT COUNT(DATETIME) FROM ANIMAL_OUTS
    WHERE HOUR(DATETIME) = @hour
    ) AS COUNT
FROM ANIMAL_OUTS
WHERE @hour<23

DATE형에 대한 시간 관련 함수

https://www.w3resource.com/mysql/date-and-time-functions/date-and-time-functions.php

 

MySQL Date and Time function - w3resource

In this page we are going to discuss about MySql date and time functions. Some date and time functions have described in this page.

www.w3resource.com

https://www.w3schools.com/mysql/mysql_ref_functions.asp

 

MySQL Functions

MySQL Functions MySQL has many built-in functions. This reference contains string, numeric, date, and some advanced functions in MySQL. MySQL String Functions Function Description ASCII Returns the ASCII value for the specific character CHAR_LENGTH Returns

www.w3schools.com

로컬변수 선언 @

  • 프로시저가 끝나도 계속 유지되는 @ 변수
  •  :=은 비교 연산자 =과 혼동을 피하기 위한의 대입 연산
1. 대입연산자
  := 
2. 산술연산자
  **(지수), + - * (산술계산)
3. 비교연산자
  =(대등), < > != ~ (부등연산자), < > <= >= (범위비교), LIKE (패턴일치 연산자),
  BETWEEN a AND b (지정범위 사이), IN (값이 목록 내에 있는지), IS NULL (값이 null인지 조사) 

참고1 https://chanhuiseok.github.io/posts/db-6/

참고2 https://jundol.me/77

 

댓글