일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 이펙티브자바
- mybatis
- 다이나믹프로그래밍
- db
- springboot
- 우선순위큐
- 너비우선탐색
- select
- 알고리즘
- 피보나치
- DFS
- 탐욕법
- Effective Java
- join
- 깊이우선탐색
- 그리디알고리즘
- BFS
- Spring
- 백준
- mariaDB
- 프로그래머스
- 데이터베이스
- 정렬
- 코테
- Greedy
- Database
- SQL
- IntelliJ
- java
- DP
- Today
- Total
목록프로그래머스 (30)
땀두 블로그

https://programmers.co.kr/learn/courses/30/lessons/59413 처음에는 그냥 BETWEEN을 이용해서 0시부터 23시까지를 구했는데, 이 방법을 사용하면, 값이 0인 칼럼은 제거되고 나오게 되었다. 그래서 다른 블로그들을 참고하여 변수 선언하는 방법을 이용하여 풀어야 한다는 것을 알았고, 문제를 해결하였다. SELECT HOUR(DATETIME) AS 'HOUR', IFNULL(COUNT(*),0) FROM ANIMAL_OUTS WHERE HOUR(DATETIME) BETWEEN 0 AND 23 GROUP BY HOUR ORDER BY HOUR; 처음에 틀렸던 코드 SET @HOUR = -1; SELECT (@HOUR := @HOUR +1) AS HOUR, (SEL..

https://programmers.co.kr/learn/courses/30/lessons/59414 간단히 DATE_FORMAT함수를 이용해서 형식을 변경해주면 해결할 수 있다. SELECT ANIMAL_ID, NAME, DATE_FORMAT(DATETIME, '%Y-%m-%d') AS '날짜' FROM ANIMAL_INS ORDER BY ANIMAL_ID;

https://programmers.co.kr/learn/courses/30/lessons/59411 두 개의 테이블을 JOIN을 한 이후에 각 테이블의 DATETIME의 값을 뺀 값을 역순으로 정렬해주었다. SELECT I.ANIMAL_ID, I.NAME FROM ANIMAL_INS I INNER JOIN ANIMAL_OUTS O ON O.ANIMAL_ID = I.ANIMAL_ID ORDER BY O.DATETIME-I.DATETIME DESC LIMIT 2;

https://programmers.co.kr/learn/courses/30/lessons/59409 CASE WHEN ~ THEN ~ ELSE ~ END 문장을 이용해서 조건에 해당하는 값을 출력하게 하는 문제이다. SELECT ANIMAL_ID, NAME, CASE WHEN SEX_UPON_INTAKE LIKE '%NEUTERED%' OR SEX_UPON_INTAKE LIKE '%SPAYED%' THEN 'O' ELSE 'X' END AS '중성화' FROM ANIMAL_INS;