SQL

SQL

LeetCode SQL 4문제 풀이

*문풀 당시 썼던 메모도 그대로 복붙해놓음 595. Big Countrieshttps://leetcode.com/problems/big-countries/description/#컨트리가 big인 경우 >> area가 적어도 3000000이어야 함(3000000이상이어야 함), 인구가 25000000이상SELECT name, population, areaFROM WorldWHERE area >= 3000000 OR population >= 25000000  620. Not Boring Movieshttps://leetcode.com/problems/not-boring-movies/description/#홀수 아이디, 디스크립션이 boring이 아닌것, 정렬은 rating 기준 내림차순SELECT *FROM..

SQL

MySQL 숫자, 문자열 다루는 함수 정리

숫자를 다루는 함수ROUND(칼럼명/값, n): 값을 소수점 이하 n자릿수로 반올림TRUNCATE(칼럼명/값, n): 값을 소수점 이하 n자릿수까지 남기고 나머지 버림CEIL(칼럼명/값): 값의 소수점 이하를 올림해 정수 반환FLOOR(칼럼명/값): 값의 소수점 이하를 버림해 정수 반환 POWER(칼럼명/값, n) = POW(칼럼명/값, n): 값을 n제곱해서 반환 >> POWER(2, 3) = 8SQRT(칼럼명/값): 값의 제곱근을 반 >> SQRT(4) = 2*값의 n제곱근을 구하기 = 값의 1/n제곱을 구하기 = POWER(칼럼명/값, 1/n)>> POWER(8, 1/3) = 2 MOD(칼럼명/값, n) : 값을 n으로 나눴을 때 나머지를 반환 >> 칼럼명/값 % n >> MOD(5, 2) = 1A..

SQL

DATE_ADD, DATE_SUB 시간 더하기, 빼기 + 리트코드 예제

날짜 데이터는 일반 int처럼 + 1로 값이 변하지 않는다. ex) 2025-01-10에 +1 해도 2025-01-11이 되지 않는다는 것따라서, 기준 날짜에서 시간을 더하고 싶으면 DATE_ADD(기준 날짜, INTERVAL) 형식으로 쿼리 작성SELECT DATE_ADD(NOW(), INTERVAL 1 SECOND)SELECT DATE_ADD(NOW(), INTERVAL 1 MINUTE)SELECT DATE_ADD(NOW(), INTERVAL 1 HOUR)SELECT DATE_ADD(NOW(), INTERVAL 1 DAY)SELECT DATE_ADD(NOW(), INTERVAL 1 MONTH)SELECT DATE_ADD(NOW(), INTERVAL 1 YEAR)SELECT DATE_ADD(NOW(),..

SQL

SELF JOIN + 리트코드 예제

SELF JOIN은 테이블이 자기 자신과 JOIN하는 것INNER JOIN을 한다. 대신 동일한 테이블을 사용하는 것이므로 별칭을 다르게 해서 구분하고 각 기준이 되는 key 칼럼을 조인해줘야 함>> Alias 필수! Leetcode 예제 1https://leetcode.com/problems/employees-earning-more-than-their-managers/ 181. Employees Earning More Than Their ManagersTable: Employee+-------------+---------+| Column Name | Type |+-------------+---------+| id | int || name | varchar || ..

SQL

CASE를 활용한 테이블 피봇 + 리트코드 예제

일반적으로 GROUP BY와 집계 함수를 써서 데이터를 출력할 때, 결과가 세로로 나온다. ex) products 테이블에서 다음과 같은 쿼리를 작성하SELECT categoryid, AVG(price)FROM ProductsGROUP BY categoryid위와 같은 결과가 나옴. 그러나, categoryid_1     categoryid_2   categoryid_3   ...             37.979...           23.062.....        25.16.....이렇게 가로로 표현되는 결과를 얻고 싶다면 CASE문을 횔용한 테이블 피벗으로 가능하다.   우선 엑셀에서 흔히 말하는 피벗테이블이 뭘까? 피벗은 회전 축의 의미로, 기존 테이블에서 기준이 되는 한 축을 잡고 그 관점으..

SQL

DATETIME, DATE_FORMAT

MySQL에서 시간과 날짜 관련된 데이터를 출력할 때, DATE, TIME, DATETIME의 데이터 타입을 사용한다. DATE: 연/월/일TIME: 시/분/초DATETIME: 연/월/일/시/분/초  보통 DATETIME을 가장 많이 쓴다.쿼리를 작성하다보면 내가 가진 DATETIME 컬럼 값의 형태가 아닌 다른 형태로 날짜, 시간 데이터를 출력하고 싶을 때가 있다.1) 2024/11/19를 2024-11-19로 출력하고 싶을 때,2) 2024/11/19 23:22:30에서 원하는 값(시간)만 뽑아내고 싶을 때,DATE_FORMAT을 쓴다. SELECT DATE_FORMAT('변경을 원하는 데이터 값 또는 칼럼', '새 형식 지정') 1)의 경우 작성법 예시SELECT DATE_FORMAT('2024/1..

얆생
'SQL' 카테고리의 글 목록 (2 Page)