2024/08 34

TIL (8/1) 윈도우 함수(My SQL)

1. 윈도우 함수란?윈도우 함수는 SQL에서 집계 함수와 비슷하게 데이터를 집계하지만, 전체 데이터 집합이 아닌 특정 "윈도우" 또는 "슬라이스"에 대한 집계를 수행합니다. 각 행에 대해 계산을 수행하며, 그룹화된 데이터가 아닌 개별 행에서 결과를 계산합니다. 2. 윈도우 함수의 주요 구성 요소PARTITION BY : 데이터를 분할할 기준을 설정합니다. 이 구문으로 데이터 집합을 여러 파티션으로 나누어 각 파티션 내에서 윈도우 함수를 적용합니다.ORDER BY : 윈도우 함수가 계산될 순서를 정의합니다. 정렬된 순서에 따라 함수 결과가 달라질 수 있습니다.ROWS/ RANGE : 윈도우의 범위를 정의합니다. 특정 범위의 행을 지정할 수 있습니다.3. 윈도우 함수를 사용하는 이유는 ?1) 행별 계산 수행..

TIL/SQL 2024.08.01

프로그래머스| 푸드파이트 대회(Python3)

문제설명수웅이는 매달 주어진 음식을 빨리 먹는 푸드 파이트 대회를 개최합니다. 이 대회에서 선수들은 1대 1로 대결하며, 매 대결마다 음식의 종류와 양이 바뀝니다. 대결은 준비된 음식들을 일렬로 배치한 뒤, 한 선수는 제일 왼쪽에 있는 음식부터 오른쪽으로, 다른 선수는 제일 오른쪽에 있는 음식부터 왼쪽으로 순서대로 먹는 방식으로 진행됩니다. 중앙에는 물을 배치하고, 물을 먼저 먹는 선수가 승리하게 됩니다. 이때, 대회의 공정성을 위해 두 선수가 먹는 음식의 종류와 양이 같아야 하며, 음식을 먹는 순서도 같아야 합니다. 또한, 이번 대회부터는 칼로리가 낮은 음식을 먼저 먹을 수 있게 배치하여 선수들이 음식을 더 잘 먹을 수 있게 하려고 합니다. 이번 대회를 위해 수웅이는 음식을 주문했는데, 대회의 조건을 ..

TIL/Python 2024.08.01

프로그래머스| 저자별 카테고리별 매출액 집계하기(My SQL)

문제 설명다음은 어느 한 서점에서 판매중인 도서정보(BOOK), 저자정보(AUTHOR), 도서판매정보(BOOK_SALES) 테이블입니다. 문제2022년 1월의 도서 판매 데이터를 기준으로 저자 별, 카테고리 별 매출액(TOTAL_SALES = 판매량 * 판매가) 을 구하여, 저자 ID(AUTHOR_ID), 저자명(AUTHOR_NAME), 카테고리(CATEGORY), 매출액(SALES) 리스트를 출력하는 SQL문을 작성해주세요. 결과는 저자 ID를 오름차순으로, 저자 ID가 같다면 카테고리를 내림차순 정렬해주세요. 나의 풀이)select a.author_id, a.author_name, b.category, sum(b.price*s.sales) as total_sales from book b join bo..

TIL/SQL 2024.08.01

프로그래머스| 조회수가 가장 많은 중고거래 게시판의 첨부파일 조회하기(My SQL)

문제 설명다음은 중고거래 게시판 정보를 담은 USED_GOODS_BOARD 테이블과 중고거래 게시판 첨부파일 정보를 담은 USED_GOODS_FILE 테이블입니다. USED_GOODS_BOARD 테이블은 다음과 같으며 BOARD_ID, WRITER_ID, TITLE, CONTENTS, PRICE, CREATED_DATE, STATUS, VIEWS은 게시글 ID, 작성자 ID, 게시글 제목, 게시글 내용, 가격, 작성일, 거래상태, 조회수를 의미합니다. 문제 USED_GOODS_BOARD와 USED_GOODS_FILE 테이블에서 조회수가 가장 높은 중고거래 게시물에 대한 첨부파일 경로를 조회하는 SQL문을 작성해주세요. 첨부파일 경로는 FILE ID를 기준으로 내림차순 정렬해주세요. 기본적인 파일경로는 /..

TIL/SQL 2024.08.01