알고리즘&백준/SQL

https://school.programmers.co.kr/learn/courses/30/lessons/299305 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제분석보기엔 간단해 보인다. 각 대장균들은 PARENT_ID 컬럼을 가지고 있다. 각 ID별로 자식이 몇인지(본인을 부모로 하는 자식이 몇인지)출력할 것.해결과정해결하면서 INNER JOIN과 LEFT, RIGHT JOIN의 차이를 격하게 복습했다.INNER : 공통되는 행들만 반환LEFT RIGHT : 해당 방향 테이블 전부를 가져온 다음, ON 조건문에 일치하지 않으면 반대쪽을 NULL로 비워둠또 새로이 알게 된 COALESCE : 입력..
https://school.programmers.co.kr/learn/courses/30/lessons/59045[프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr](https://school.programmers.co.kr/learn/courses/30/lessons/59045)문제분석어쩌다 보니 3번째 보호소 문제이다. 이정도면 일부러 찾아서 보호소 문제 푸는 것 같기도 하고...아무튼, 문제를 분석해보면ANIMAL_INS 에서는 중성화돼있지 않은 동물&& ANIMAL_OUTS 에서는 중성화돼있는 동물ID를 기준으로 오름차순 정렬요구에 맞게 SQL문을 작성하면 될 듯 하다.해결과정WHERE문을 꽤 많이..
https://school.programmers.co.kr/learn/courses/30/lessons/59043 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제분석저번 문제도 분명 동물보호소 였던걸로 기억하는데...또 동물 보호소다. 아무튼,ANIMAL_INS의 DATETIME보다 ANIMAL_OUT의 DATETIME이 더 과거인 경우의 동물들을 찾아서, ANIMAL_INS의 DATETIME 기준오름차순으로 정렬해서 보여라해결과정한번에 정답 맞춰서 기쁘다...ㅠㅠ일단 OUT에서 ID와 날짜를 가져온다. 이후 ON을 통해 ID를 매칭시킨 뒤, WHERE 조건문을 통해 원하는 조건만 걸러낸다. 마지막으..
https://school.programmers.co.kr/learn/courses/30/lessons/59042# 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제분석ANIMAL_INS에는 없고&&ANIMAL_OUTS에는 있는 동물의 ID와 NAME을 찾고, ID 오름차순ASC 정렬"없는" 값을 어떻게 구하나 봤더니, WHERE NOT EXISTS를 이용한다.WHERE NOT EXISTS : 특정 조건이 만족되지 않는 데이터를 필터링SELECT NameFROM Employees eWHERE NOT EXISTS ( SELECT 1 FROM Departments d WHERE e.Dep..
https://school.programmers.co.kr/learn/courses/30/lessons/131533 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제분석오프라인에서 판매된 상품 당 판매수를 가지고, 상품 당 매출액 계산해서 보여주기.해결과정1. OFFLINE\_SALE 테이블을 상품 고유값인 PRODUCT\_ID를 기준으로, ID-총 판매수 로 테이블 구성2. JOIN으로 테이블을 가져와서, 상품 코드-판매액 테이블 생성해서 정렬 후 반환SELECT PRODUCT_CODE, (sales.sales_sum*product.price) AS SALESFROM PRODUCT AS product..
https://school.programmers.co.kr/learn/courses/30/lessons/131118 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr  문제분석REST_REVIEW 를 활용해식당별로 평균 점수를 매김(REST_ID 와 AVG_SCORE만 세팅)1에서의 ID와 REST_INFO 의 ID를 매칭한 후, 원하는 컬럼만 표시추가적인 정렬 작업 (리뷰 평균점수는 소수점 세 번째 자리에서 반올림. 결과는 평균점수를 기준으로 내림차순 정렬. 평균점수가 같다면 즐겨찾기수를 기준으로 내림차순 정렬)해결과정1.SELECT REST_ID, AVG(REVIEW_SCORE) AS AVG_SCORE..
https://chabin37.notion.site/SQL-1748900e50448061b38bfe373e3a03d1?pvs=4 SQL 문법 | Notion0. 테이블 별칭(alias)chabin37.notion.site