반응형

전체 글 96

[MYSQL] PROGRAMMERS_입양 시각 구하기(1)

SELECT HOUR(DATETIME) as HOUR, COUNT(ANIMAL_ID)COUNT FROM ANIMAL_OUTS WHERE 1=1 and HOUR(DATETIME) between 09 and 19 GROUP BY 1 ORDER BY 1 ANIMAL_ID, ANIMAL_TYPE, DATETIME, NAME, SEX_UPON_OUTCOME는 각각 동물의 아이디, 생물 종, 입양일, 이름, 성별 및 중성화 여부를 나타냄 문제 09:00부터 19:59까지, 각 시간대별로 입양이 몇 건이나 발생했는지 조회하는 SQL문을 작성후 결과는 시간대 순으로 정렬 DATETIME 은 년 월 일 시간 분 초 까지 다 나와 있는 데이터로 포멧을 바꾸어 주어야 한다. 여기엔 적어두지 않았지만 답안 예시에는 시간이 9..

[MYSQL] PROGRAMMERS_진료과별 총 예약 횟수 출력하기

SELECT MCDP_CD as 진료과코드,count(APNT_NO) as 5월예약건수 FROM APPOINTMENT WHERE 1=1 AND APNT_YMD like "2022-05%" GROUP BY 1 ORDER BY 2,1 APNT_YMD, APNT_NO, PT_NO, MCDP_CD, MDDR_ID, APNT_CNCL_YN, APNT_CNCL_YMD는 각각 진료예약일시, 진료예약번호, 환자번호, 진료과코드, 의사ID, 예약취소여부, 예약취소날짜를 나타냄 문제 테이블에서 2022년 5월에 예약한 환자 수를 진료과코드 별로 조회하는 SQL문을 작성. 이때, 컬럼명은 '진료과 코드', '5월예약건수'로 지정 후 결과는 진료과별 예약한 환자 수를 기준으로 오름차순 정렬하고, 예약한 환자 수가 같다면 진료..

[MYSQL] PROGRAMMERS_고양이와 개는 몇 마리 있을까

SELECT ANIMAL_TYPE, count(ANIMAL_ID)count FROM ANIMAL_INS WHERE 1=1 AND ANIMAL_TYPE in ("DOG","CAT") GROUP BY ANIMAL_TYPE ORDER BY ANIMAL_TYPE ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냅니다. 문제 동물 보호소에 들어온 동물 중 고양이와 개가 각각 몇 마리인지 조회하는 SQL문을 작성후 고양이를 개보다 먼저 조회 일단 개와 고양이 데이터만을 필터 해야하기에 in () 구문으로 ANIMAL_TYPE 에서..

[MYSQL] PROGRAMMERS_중성화 여부 파악하기

SELECT ANIMAL_ID, NAME, CASE WHEN SEX_UPON_INTAKE like 'Neutered%' then "O" WHEN SEX_UPON_INTAKE like "Spayed%" then "O" else "X" end as "중성화" FROM ANIMAL_INS ORDER BY 1 ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냄 문제 중성화된 동물은 SEX_UPON_INTAKE 컬럼에 'Neutered' 또는 'Spayed'라는 단어로 표기. 동물의 아이디와 이름, 중성화 여부를 아이디 순으로 ..

[MYSQL] PROGRAMMERS_카테고리 별 상품 개수 구하기

SELECT left(PRODUCT_CODE,2) as CATEGORY, COUNT(PRODUCT_ID) as PRODUCTS FROM PRODUCT group by 1 order by 1 PRODUCT_ID, PRODUCT_CODE, PRICE는 각각 상품 ID, 상품코드, 판매가를 나타냄 문제 PRODUCT 테이블에서 상품 카테고리 코드(PRODUCT_CODE 앞 2자리) 별 상품 개수를 출력하는 SQL문을 작성후 결과는 상품 카테고리 코드를 기준으로 오름차순 정렬 left와 case 구문을 써야하나 생각 했다가 간단하게 select 구문에서 left 구문을 써서 해결했다. PRODUCT_CODE의 왼쪽 2개 값을 가진 컬럼을 CATEGORY 컬럼으로 명하고 해당 컬럼을 기준으로 GROUP BY 하여..

[MYSQL] PROGRAMMERS_가격이 제일 비싼 식품의 정보 출력하기

/*SELECT PRODUCT_ID, PRODUCT_NAME, PRODUCT_CD, CATEGORY, MAX(PRICE) as PRICE FROM FOOD_PRODUCT*/ --1번째 답 SELECT PRODUCT_ID, PRODUCT_NAME, PRODUCT_CD, CATEGORY, PRICE FROM FOOD_PRODUCT ORDER BY PRICE desc l --2번째 답 SELECT * FROM FOOD_PRODUCT WHERE PRICE = (SELECT MAX(PRICE) FROM FOOD_PRODUCT) PRODUCT_ID, PRODUCT_NAME, PRODUCT_CD, CATEGORY, PRICE는 식품 ID, 식품 이름, 식품 코드, 식품분류, 식품 가격을 의미 문제 FOOD_PRODU..

[MYSQL] PROGRAMMERS_DATETIME에서 DATE로 형 변환

SELECT ANIMAL_ID, NAME, DATE_FORMAT(DATETIME,"%Y-%m-%d") as 날짜 FROM ANIMAL_INS ORDER BY 1 ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냄 문제 등록된 모든 레코드에 대해, 각 동물의 아이디와 이름, 들어온 날짜1를 조회하는 SQL문을 작성해주세요. 이때 결과는 아이디 순으로 조회 시각(시-분-초)을 제외한 날짜(년-월-일)만 보여주세요. 이전에 풀었던 문제와 같이 DATE_FORMAT을 이용하여 해결하였다. 다른 조건은 크게 필요없는 문제.

[MYSQL] PROGRAMMERS_NULL 처리하기

SELECT ANIMAL_TYPE, IFNULL(NAME,"No name")as NAME, SEX_UPON_INTAKE FROM ANIMAL_INS WHERE 1=1 ORDER BY ANIMAL_ID ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부를 나타냄 문제 동물의 생물 종, 이름, 성별 및 중성화 여부를 아이디 순으로 조회하는 SQL문을 작성. 이름이 없는 동물의 이름은 "No name"으로 표시하라 NULL을 사용하는게 핵심인 문제로 MySQL에서는 IFNULL로 NULL을 처리 한다. 따라서 SELECT문에서 IFN..

[MYSQL] PROGRAMMERS_이름에 el이 들어가는 동물 찾기

SELECT ANIMAL_ID, NAME FROM ANIMAL_INS WHERE 1=1 AND ANIMAL_TYPE = "Dog" AND NAME like "%EL%" ORDER BY NAME ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부 문제 동물 보호소에 들어온 동물 이름 중, 이름에 "EL"이 들어가는 개의 아이디와 이름을 조회하는 SQL문을 작성. 이때 결과는 이름 순으로 조회. 단, 이름의 대소문자는 구분하지 않는다. MySQL은 찾아본 결과 기본적으로 데이터의 대소문자를 구분하지 않는다고 한다. 따라서 따로 건드..

[MYSQL] PROGRAMMERS_동명 동물 수 찾기

SELECT NAME, count(NAME) as COUNT FROM ANIMAL_INS where 1=1 group by 1 having count >=2 order by 1 ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디, 생물 종, 보호 시작일, 보호 시작 시 상태, 이름, 성별 및 중성화 여부 문제 동물 보호소에 들어온 동물 이름 중 두 번 이상 쓰인 이름과 해당 이름이 쓰인 횟수를 조회하는 SQL문을 작성. 결과는 이름이 없는 동물은 집계에서 제외하며, 결과는 이름 순으로 조회 Select 문에서 NAME을 기준으로 집합하여 그 수를 COUNT 해야하는 문제인데 COUNT 된 값에 대한 조건..

반응형