inblog logo
|
LHS's Study Space
    SQL문제풀기

    [SQL 문제 풀기] 있었는데요 없었습니다(59043)

    lhs's avatar
    lhs
    Dec 18, 2024
    [SQL 문제 풀기] 있었는데요 없었습니다(59043)
    Contents
    1. 문제 풀이 아이디어2. 나의 정답 코드3. 정리4. NATURAL JOIN 사용 실패 이유
    school.programmers.co.kr
    https://school.programmers.co.kr/learn/courses/30/lessons/59043
     

    1. 문제 풀이 아이디어

    • JOIN 절을 사용하여 테이블을 결합해 문제를 해결한다.

    2. 나의 정답 코드

    SELECT i.animal_id, i.name FROM animal_ins i JOIN animal_outs o ON i.animal_id = o.animal_id WHERE i.datetime > o.datetime ORDER BY i.datetime;

    3. 정리

    • JOIN 절을 사용하여 animal_outs 테이블과 결합하며, 동일한 컬럼 이름이 있으므로 별칭을 지정한다.
    • ON 절에서 조인 조건으로 사용할 animal_id를 설정한다.
    • WHERE 절에서 i.datetime과 o.datetime을 비교해 조건에 맞는 데이터만 필터링한다.
    • ORDER BY 절에서 i.datetime을 기준으로 오름차순 정렬한다.

    4. NATURAL JOIN 사용 실패 이유

    • NATURAL JOIN을 사용하여 문제를 해결하려 했으나 실패했다.
    • NATURAL JOIN은 동일한 컬럼명을 모두 기준으로 결합하므로, WHERE 절의 datetime 비교에서 모순이 발생해 사용할 수 없었다.
    Share article

    LHS's Study Space

    RSS·Powered by Inblog