01/26 SQL 문제풀이

Data Architect / Engineer·2024년 1월 26일
1

1일_1SQL

목록 보기
15/63
post-thumbnail

문제

  • 프로그래머스 SQL 문제
  • 보호소에서 중성화한 동물 / `레벨 4
  • 문제 내용 : 하단 프로그래머스 문제 링크


내가 작성한 Query

SELECT A.ANIMAL_ID
     , A.ANIMAL_TYPE
     , A.NAME
FROM ANIMAL_INS A 
     JOIN ANIMAL_OUTS B ON A.ANIMAL_ID = B.ANIMAL_ID
WHERE A.SEX_UPON_INTAKE LIKE '%Intact%'
  AND (B.SEX_UPON_OUTCOME LIKE '%Spayed%' OR B.SEX_UPON_OUTCOME LIKE '%Neutered%')
ORDER BY A.ANIMAL_ID ASC;  
  • 'ANIMAL_INS' 테이블과 'ANIMAL_OUTS' 테이블을 사용해야 하므로 'ANIMAL_ID' 컬럼을 기준으로 JOIN

  • 입양되기 전에는 중성화가 되어있지 않아야 하므로, A.SEX_UPON_INTAKE LIKE '%Intact%' ,
    그리고 입양되어 나갈 때에는 중성화가 되어있는 상태이어야 하므로,
    B.SEX_UPON_OUTCOME LIKE '%Spayed%' OR B.SEX_UPON_OUTCOME LIKE '%Neutered%'
    이 2개의 조건을 동시에 만족해야 하므로 WHERE절에서 AND로 이어준다.

  • ORDER BY를 이용해 'ANIMAL_ID' 기준으로 오름차순 정렬한다.

  • WHERE의 조건 이용과 간단한 JOIN 물어보는 문제임. 굿굿

profile
질문은 계속돼 아오에

0개의 댓글