제출한 코드 :
SELECT NAME, COUNT(NAME)
FROM ANIMAL_INS
GROUP BY NAME
HAVING COUNT(NAME) >= 2
ORDER BY NAME;
또는
SELECT NAME, COUNT(*)
FROM ANIMAL_INS
WHERE NAME IS NOT NULL
GROUP BY NAME
HAVING COUNT(NAME) >= 2
ORDER BY NAME;
COUNT(*) -> name이 NULL인 row도 포함
COUNT(name) -> name이 NULL인 row는 미포함
HAVING
- GROUP BY 절에 조건을 걸고 싶을 때 = GROUP BY의 WHERE절
- GROUP BY 다음에 작성(WHERE과 동일한 형식으로)
아픈 동물
의 아이디와 이름을 조회하는 SQL 문을 작성해주세요. 이때 결과는 아이디 순으로 조회해주세요.아픈 동물
: INTAKE_CONDITION이 Sick 인 경우를 뜻함제출한 코드 :
SELECT ANIMAL_ID
, NAME
FROM ANIMAL_INS
WHERE INTAKE_CONDITION = "Sick"
GROUP BY NAME
ORDER BY ANIMAL_ID;
제출한 코드 :
SELECT NAME
FROM ANIMAL_INS
ORDER BY DATETIME
LIMIT 1;
처음에는 냅다 WHERE 쓰려고 함 MAX(DATETIME)을 쓰려 했는데 생각해 보니 그럴이유가 없었다.
제출한 코드 :
SELECT MIN(DATETIME)
FROM ANIMAL_INS;
젊은 동물
의 아이디와 이름을 조회하는 SQL 문을 작성해주세요. 이때 결과는 아이디 순으로 조회해주세요.젊은 동물
: INTAKE_CONDITION이 Aged가 아닌 경우제출한 코드 :
SELECT ANIMAL_ID
, NAME
FROM ANIMAL_INS
WHERE INTAKE_CONDITION <> 'AGED'
<> 대신에 파이썬 마냥 != 써도 됨.
오늘의 TMI
- 해야할 일이 산더미다;;;;;;;; 그래서 SQL문제는 주말에 좀 각잡고 풀 예정(이번주는)
- 컨디션이 좋지 않음