전체 글 134

[SQL] solvesql Advent of SQL 2024 12일차

# 링크solvesql Advent of SQL 2024: https://solvesql.com/collections/advent-of-sql-2024/ https://solvesql.com/collections/advent-of-sql-2024/ solvesql.com12일차 - 3년간 들어온 소장품 집계하기: https://solvesql.com/problems/summary-of-artworks-in-3-years/ https://solvesql.com/problems/summary-of-artworks-in-3-years/ solvesql.com # 풀이SELECT classification, COUNT(*) FILTER (WHERE strftime('%Y', acquisition_date) ..

[SQL] strftime

# strftimeSQL에서 날짜와 시간을 지정된 형식의 문자열로 변환하는 함수특히 SQLite에서 날짜와 시간 데이터를 처리할 때 유용하다.SQLite는 strftime에서 입력 값이 ISO 8601 형식(예: YYYY-MM-DD HH:MM:SS)일 때 가장 정확하게 동작한다.포맷 코드는 조합 가능하며, 필요한 데이터만 추출할 수 있다. # 기본 구문strftime(format, date/time_expression)format: 출력 문자열의 형식을 지정하는 포맷 문자열date/time_expression: 변환하고자 하는 날짜 또는 시간 표현 # 주요 포맷 코드코드설명예시 출력%Y4자리 연도2024%m2자리 월 (01~12)12%d2자리 일 (01~31)11%H2자리 시 (00~23, 24시간 형식..

SQL 2024.12.11

[SQL] CTE(Common Table Expression)

# CTE(Common Table Expression)SQL 쿼리 내에서 임시로 사용할 수 있는 이름이 있는 결과 집합을 정의하는 방식일반적으로 긴 쿼리의 가독성을 높이고, 반복적인 서브쿼리를 간소화하며, 복잡한 쿼리를 단계별로 처리할 때 유용하다.CTE는 WITH 절을 사용하여 정의하며, CTE로 정의된 데이터는 해당 쿼리에서만 사용 가능하다. # 구조WITH cte_name AS ( -- CTE를 정의하는 쿼리 SELECT column1, column2, ... FROM table_name WHERE conditions)-- CTE를 활용한 주 쿼리SELECT *FROM cte_nameWHERE additional_conditions;WITH cte_name AS:cte_name..

SQL 2024.12.11

[SQL] solvesql Advent of SQL 2024 11일차

# 링크solvesql Advent of SQL 2024: https://solvesql.com/collections/advent-of-sql-2024/ https://solvesql.com/collections/advent-of-sql-2024/ solvesql.com11일차 - 서울숲 요일별 대기오염도 계산하기: https://solvesql.com/problems/weekday-stats-airpollution/ https://solvesql.com/problems/weekday-stats-airpollution/ solvesql.com # 풀이SELECT CASE strftime('%w', measured_at) WHEN '1' THEN '월요일' WHEN '2' THEN '화요일'..

[SQL] solvesql Advent of SQL 2024 10일차

# 링크solvesql Advent of SQL 2024: https://solvesql.com/collections/advent-of-sql-2024/ https://solvesql.com/collections/advent-of-sql-2024/ solvesql.com10일차 - 최대값을 가진 행 찾기: https://solvesql.com/problems/max-row/ https://solvesql.com/problems/max-row/ solvesql.com # 풀이SELECT idFROM pointsWHERE x = (SELECT MAX(x) FROM points) OR y = (SELECT MAX(y) FROM points)ORDER BY id ASCSELECT id: id 컬럼을 선택한다.F..

[SQL] solvesql Advent of SQL 2024 9일차

# 링크solvesql Advent of SQL 2024: https://solvesql.com/collections/advent-of-sql-2024/ https://solvesql.com/collections/advent-of-sql-2024/ solvesql.com9일차 - 게임 평점 예측하기 1: https://solvesql.com/problems/predict-game-scores-1/ https://solvesql.com/problems/predict-game-scores-1/ solvesql.com # 풀이WITH GenreAverages AS ( SELECT genre_id, ROUND(AVG(critic_score),3) AS avg_critic_score, CAST(..

[SQL] solvesql Advent of SQL 2024 8일차

# 링크solvesql Advent of SQL 2024: https://solvesql.com/collections/advent-of-sql-2024/ https://solvesql.com/collections/advent-of-sql-2024/ solvesql.com8일차 - 온라인 쇼핑몰의 월 별 매출액 집계: https://solvesql.com/problems/shoppingmall-monthly-summary/ https://solvesql.com/problems/shoppingmall-monthly-summary/ solvesql.com # 풀이SELECT strftime('%Y-%m', o.order_date) AS order_month, SUM(CASE WHEN o.order_id N..

[SQL] solvesql Advent of SQL 2024 6일차

# 링크solvesql Advent of SQL 2024: https://solvesql.com/collections/advent-of-sql-2024/ https://solvesql.com/collections/advent-of-sql-2024/ solvesql.com6일차 - 게임을 10개 이상 발매한 퍼블리셔 찾기: https://solvesql.com/problems/publisher-with-many-games/  https://solvesql.com/problems/publisher-with-many-games/ solvesql.com # 풀이SELECT c.nameFROM companies AS cJOIN games AS g  ON c.company_id = g.publisher_idGROU..

[SQL] 이스케이프 문자(Escape Character)

# 이스케이프 문자이스케이프 문자(Escape Character): 특정 특수 문자를 문자 그대로 인식하도록 지정하는 데 사용하는 문자SQL에서 특정 문자(예: %, _)는 특수한 기능을 가지며, 이를 본래 문자 그대로 처리해야 할 때 이스케이프(Escape) 처리가 필요하다.이스케이프 문자는 SQL에서 특수 문자의 기본 기능(예: _와 %의 와일드카드 기능)을 비활성화하여 해당 문자를 문자 그대로 검색하거나 사용할 수 있도록 도와준다.이스케이프 처리시, ESCAPE 절로 지정되며, 일반적으로 백슬래시(\)가 사용된다. # 이스케이프 문자가 필요한 경우파일 이름, URL, 경로 탐색경로에 언더스코어가 포함된 데이터를 검색할 때.예: /my_folder/file_name.특수 문자를 포함한 문자열 검색이메..

SQL 2024.12.06
728x90