[내일배움캠프] SQL 코드카타, 기초 EDA 프로젝트 시작

sleekstar·2025년 5월 19일

SQL 코드카타

문제: 중성화 여부 파악하기

내 답안(오답)

SELECT 
    ANIMAL_ID,
    NAME,
    CASE WHEN SEX_UPON_INTAKE LIKE '%Neutered%' OR '%Spayed%' THEN 'O'
    ELSE 'X'
END AS '중성화'
FROM ANIMAL_INS
ORDER BY ANIMAL_ID;

왜 오답인지 알 수 없었음(코드가 제대로 구동되는 것 같아서)

정답과 비교해보고 나서야 알 수 있었다.

SELECT ANIMAL_ID
      ,NAME
      ,CASE 
            WHEN SEX_UPON_INTAKE LIKE '%Neutered%' OR SEX_UPON_INTAKE LIKE '%Spayed%' THEN 'O' 
            ELSE 'X' 
       END AS '중성화'
FROM ANIMAL_INS
ORDER BY ANIMAL_ID;
잘못된 구문이유
A OR B에서 B가 조건문이 아닌 일반 값일 때SQL은 B를 TRUE로 해석해버림
'문자열' 자체는 TRUE처럼 동작비어 있지 않기 때문
올바른 비교: A LIKE '%a%' OR A LIKE '%b%'각각 완성된 조건이 필요함

조건문은 항상 완성된 비교식으로 각각 써야함을 잊지 말자.
]

기초 EDA 프로젝트

데이터 베이스 연결

replace method가 none으로 되어 있으면 중복된 값에서 오류가 뜸

ALTER TABLE divvy
MODIFY COLUMN started_at DATETIME; 

이미 만들어진 테이블을 수정하는 문법

profile
기록용

0개의 댓글