본문 바로가기
728x90

Programming/SQL10

[LeetCode] 175. Combine Two Tables SELECT p.firstName, p.lastName, a.city, a.stateFROM Person AS pLEFT JOIN Address AS a ON p.personId = a.personId조건을 잘 읽자 If the address of a personId is not present in the Address table, report null instead.교집합 구하는거 아니고, left join이었음 2025. 5. 5.
[프로그래머스] 업그레이드 된 아이템 구하기 SELECT * # info.ITEM_ID, # info.ITEM_NAME, # info.RARITYFROM ITEM_INFO AS info# JOIN ITEM_TREE AS tree# ON info.ITEM_ID = tree.ITEM_ID# JOIN ITEM_INFO AS parent# ON tree.PARENT_ITEM_ID = parent.ITEM_ID# WHERE parent.RARITY = 'RARE'# ORDER BY info.ITEM_ID DESCSELECT * # info.ITEM_ID, # info.ITEM_NAME, # info.RARITYFROM ITEM_INFO AS infoJOIN ITEM_TREE AS tree ON .. 2025. 4. 30.
[프로그래머스] 이름에 el이 들어가는 동물 찾기 풀이WHERE NAME LIKE '%EL%'LIKE%문자열%'` 구문으로 특정 문자열 포함 여부를 체크한다.SELECT ANIMAL_ID, NAMEFROM ANIMAL_INSWHERE NAME LIKE '%EL%' AND ANIMAL_TYPE = 'Dog'ORDER BY NAME 2025. 4. 13.
[프로그래머스] 최솟값 구하기 엊그제 푼거와 동일한 원리로 서브쿼리를 구성한다. SELECT DATETIME AS 시간FROM ANIMAL_INSWHERE DATETIME = (SELECT MIN(DATETIME) FROM ANIMAL_INS)최소 시간에 해당하는 '시간'컬럼 값을 가진 행만 필터링한다 2025. 4. 12.
[프로그래머스] 가격이 제일 비싼 식품의 정보 출력하기 WHERE PRICE = (SELECT MAX(PRICE) FROM FOOD_PRODUCT);서브쿼리로 FOOD_PRODUCT 테이블에서 MAX(PRICE)를 구하고그 가격과 일치하는 행을 다 가져옴그런 행이 여러개면? 여러개 가져옴아래 방식은 오답 SELECT PRODUCT_ID, PRODUCT_NAME, PRODUCT_CD, CATEGORY, MAX(PRICE)FROM FOOD_PRODUCT이렇게하면 그룹핑(GROUP BY)안 한 상태로 집계함수만 쓴거라서MAX(PRICE)를 구할 때 테이블 전체에서 가장 큰 값이 나옴PRICE 컬럼은 MAX가 나오는데, 나머지 컬럼들은 무작위값으로 나옴전체 코드SELECT PRODUCT_ID, PRODU.. 2025. 4. 10.
[프로그래머스] 가격대 별 상품 개수 구하기 기본 아이디어그룹바이range는 어케 설정하지?FLOOR(PRICE / 10000) * 10000 AS PRICE_GROUP,10000원 단위의 범위 자동화 FLOOR 사용GROUP BY PRICE_GROUP그 범위별로 그룹바이 해주기SELECT FLOOR(PRICE / 10000) * 10000 AS PRICE_GROUP, COUNT(*) AS PRODUCTSFROM PRODUCTGROUP BY PRICE_GROUPORDER BY PRICE_GROUP 2025. 4. 9.
728x90