문제 풀이 📌 SELECT CAR_TYPE, COUNT(*) AS CARS CAR_TYPE, 결과값 개수의 별칭은 CARS 📌 FROM CAR_RENTAL_COMPANY_CAR CAR_RENTAL_COMPANY_CAR 테이블에서 📌 WHERE OPTIONS LIKE '%통풍시트%' OR OPTIONS LIKE '%열선시트%' OR OPTIONS LIKE '%가죽시트% LIKE '%옵션%' 옵션이라는 말이 들어가면 해당. 옵션 중 하나 이상만 포함하면 되기 때문에 OR. ※ WHERE OPTIONS IN ('통풍시트', '열선시트', '가죽시트')가 오답인 이유 위 코드는 옵션으로 통풍시트만 있거나, 열선시트만 있거나, 가죽시트만 있어야 그 결과값이 나옵니다. 즉, 차량 옵션으로 '통풍시트', '네비게이션..
문제 풀이 📌 SELECT PRODUCT_CODE, SUM(P.PRICE * O.SALES_AMOUNT) AS SALES PRODUCT테이블의 PRICE(가격)와 OFFLINE_SALE테이블의 SALES_AMOUNT(판매량)을 곱한 것을 열 이름 SALES로 만든다. 📌 FROM PRODUCT AS P PRODUCT 는 별칭 P라고 부른다. 📌 INNER JOIN OFFLINE_SALE AS O ON O.PRODUCT_ID = P.PRODUCT_ID PRODUCT_ID을 기준으로 OFFLINE_SALE테이블과 PRODUCT 테이블의 공집합 INNER JOIN을 JOIN이라고만 써도 INNER JOIN으로 인식. 🟢🟡🟠 JOIN https://hongong.hanbit.co.kr/sql-%EA%B8%B0%..
문제 풀이 📌 #1 SELECT DATE_FORMAT(DATETIME, '%H') AS HOUR, COUNT(ANIMAL_ID) AS COUNT '%H' : 24시간 형식으로 표시 COUNT(ANIMAL_ID) : ANIMAL_ID의 개수를 셈. 이전 다른 풀이 참고( DATE_FORMAT으로 형식 ) : https://sesam-dev.tistory.com/55 📌#2 FROM ANIMAL_OUTS ANIMAL_OUTS 테이블에서 📌#3 WHERE DATE_FORMAT(DATETIME, '%H') BETWEEN 09 AND 19 DATE_FORMAT(DATETIME, '%H') : DATETIME를 24시간 형식으로 표기 BETWEEN 09 AND 19 : DATETIME의 시간은 09에서 19사이 📌..
문제 풀이 📌 #1 SELECT LEFT(PRODUCT_CODE, 2) AS CATEGORY, PRODUCT_CODE 왼쪽 2글자만, 열 이름은 CATEGORY 📌 #2 COUNT(PRODUCT_ID) AS PRODUCTS PRODUCT_ID의 개수를 센다. 열 이름은 PRODUCTS 📌 #3 FROM PRODUCT PRODUCT 테이블에서 📌 #4 GROUP BY CATEGORY CATEGORY별로 그룹을 묶는다. #2을 CATEGORY별로 묶어서 개수를 표시하기 위해.. 📌 #5 ORDER BY CATEGORY CATEGORY를 오름차순으로 정렬 정답 SELECT LEFT(PRODUCT_CODE, 2) AS CATEGORY, COUNT(PRODUCT_ID) AS PRODUCTS FROM PRODUCT..
문제 풀이 📌#1 SELECT ANIMAL_TYPE, COUNT(ANIMAL_TYPE) AS count ANIMAL_TYPE을 COUNT하겠다. 결과값의 별칭은 count로 하겠다. 📌#2 FROM ANIMAL_INS ANIMAL_INS 테이블에서 📌#3 GROUP BY ANIMAL_TYPE ANIMAL_TYPE 을 기준으로 그룹화. #1의 COUNT를 ANIMAL_TYPE기준으로 하기 위해서 📌#4 ORDER BY ANIMAL_TYPE 문제 : 고양이를 개보다 먼저 조회해주세요. ANIMAL_TYPE을 기준으로 정렬. 고양이를 먼저 조회하기 위해 정답 SELECT ANIMAL_TYPE, COUNT(ANIMAL_TYPE) AS count FROM ANIMAL_INS GROUP BY ANIMAL_TYPE ..
문제 풀이 📌 CASE → 조건문 WHEN SEX_UPON_INTAKE = 'Neutered Male' OR SEX_UPON_INTAKE = 'Spayed Female' → WHEN 조건에 해당되면, THEN 'O' → TEHN 'O' 반환 ELSE 'X' → 그렇지 않으면 'X' 반환 END AS '중성화' → END : CASE문 종료, AS: 결과값의 열 이름 ✔ CASE문 1) WHEN - THEN은 항상 같이 사용하기 2) WHEN - THEN 개수 상관 없음 3) ELSE가 없고, WHEN - THEN 조건 충족하지 않으면 NULL 값 반환 4) 조건문 마지막에 END 꼭 써주기 CASE WHEN 조건1 THEN 조건1 충족할 때 반환되는 값 WHEN 조건2 THEN 조건2 충족할 때 반환되는..
문제 풀이 📌 ORDER BY PRICE DESC ORDER BY PRICE : PRICE로 순서정렬 DESC : 내림차순 📌 LIMIT 1 결과값에서 첫 줄만 출력 SELECT * FROM FOOD_PRODUCT ORDER BY PRICE DESC LIMIT 1;
문제 시각(시-분-초)을 제외한 날짜(년-월-일)만 보여주세요. 풀이 잘못된 풀이 📌 DATE(DATETIME) AS '날짜' DATETIME에는 이미 시각이 포함되어 있는 값이라서 DATE를 사용하면 날짜가 '2018-07-22 00:00:00'처럼 시각을 제외하는 것이 아닌 0으로 표시한 값이 나온다. SELECT ANIMAL_ID, NAME, DATE(DATETIME) AS '날짜' FROM ANIMAL_INS ORDER BY ANIMAL_ID 잘된 풀이 📌 DATE_FORMAT(DATETIME, '%Y-%m-%d') DATE_FORMAT으로 형식을 정해줘야 한다. SELECT ANIMAL_ID, NAME, DATE_FORMAT(DATETIME, '%Y-%m-%d') AS '날짜' FROM ANIM..
문제 내 풀이 📌 CASE 📌 WHEN NAME IS NULL THEN 'No name' NAME이 NULL일 경우, 'No name'으로 표시 📌 ELSE NAME 그렇지 않을 경우, NAME과 SEX_UPON_INTAKE 표시 📌 END AS NAME, SEX_UPON_INTAKE NAME을 "NAME"이라는 별칭으로 지정, 나온 NAME값과 SEX_UPON_INTAKE 조회 SELECT ANIMAL_TYPE, CASE WHEN NAME IS NULL THEN 'No name' ELSE NAME END AS NAME, SEX_UPON_INTAKE FROM ANIMAL_INS 다른 사람 풀이 📌 IFNULL(NAME, 'No name') NAME이 NULL일 경우, 'No name'으로 출력 SELEC..