#sql

24 posts

Top Competitors

5분

1. Top Competitors 난이도 Medium 출처 Top Competitors | HackerRank A. 📜 문제코딩 대회의 리더보드를 만들어야한다. 쿼리를 작성하여 하나보다 많은 챌린지에 만점을 획득한 각 hacker_id, name을 출력하라. 해커(player)가 만점을 획득한 총 문제 수에 따라 출력을 내림차순으로 정렬한다. 둘 이상의 해커가 동일한 수의 챌린지에서 만점을 받은 경우 오름차순으로 hacker_id를 정렬한다. B. …

Occupations

4분

1. Occupations 난이도 Medium 출처 Solve SQL | HackerRank A. 📜 문제트랜잭션 테이블(행방향으로 증가하는 테이블)을 크로스 테이블(열방향으로 증가하는 테이블)로 만드는 크로스 집계를 하시오. B. 💡 내 답안a. 😅 1차 시도 (실패후 성공) SELECT Doctor, Professor, Singer, Actor FROM ( SELECT ROW_NUMBER() OVER (PARTITION BY occupation ORDER BY name) AS A, …

SQLD를 취득해보자.

1분

1. 취득 목적데이터 관련 일을 하던, 백앤드 일을 하던 SQL 관련 지식은 필요하다고 생각했다. 학부에서 수박 겉핥기로 공부한 RDB 내용을 보강해야겠다는 생각도 있었다. 그리고 가끔 코딩테스트에 출제되는 SQL 문제를 풀지 못한다는게 SQLD를 공부해서 취득한 가장 큰 이유였다. 자격증을 딴다고 SQL을 자유자재로 다룰 수 있다고 믿지는 않는다. 다만, 투입한 시간만큼은 SQL적인 …

Summer/Winter Coding(2019) - 우유와 요거트가 담긴 장바구니

1분

1. 우유와 요거트가 담긴 장바구니 A. 문제 위 프로그래머스 사이트에 접속하여 문제를 확인해주세요. B. 내 답안 -- Oracle SELECT A.CART_ID FROM CART_PRODUCTS A JOIN CART_PRODUCTS B ON (A.CART_ID=B.CART_ID) WHERE A.NAME='Milk' AND B.NAME='Yogurt' ORDER BY A.ID; a. 회고 내 풀이 이 문제는 합집합, JOIN, 서브쿼리로 …

JOIN - 보호소에서 중성화한 동물

1분

1. 보호소에서 중성화한 동물 A. 문제 위 프로그래머스 사이트에 접속하여 문제를 확인해주세요. B. 내 답안 -- Oracle SELECT INS.ANIMAL_ID, INS.ANIMAL_TYPE, INS.NAME FROM ANIMAL_INS INS JOIN ANIMAL_OUTS OUTS ON (INS.ANIMAL_ID=OUTS.ANIMAL_ID) WHERE UPPER(INS.SEX_UPON_INTAKE) LIKE 'INTACT%' AND (UPPER(OUTS.SEX_UPON_OUTCOME) LIKE 'SPAYED%' OR UPPER(OUTS.SEX_UPON_OUTCOME) LIKE 'NEUTERED%') ORDER BY ANIMAL_ID; a. 회고 내 풀이 …

GROUP BY - 입양 시각 구하기(2)

1분

1. 입양 시각 구하기(2) A. 문제 위 프로그래머스 사이트에 접속하여 문제를 확인해주세요. B. 내 답안 -- Oracle SELECT B.L AS HOUR, NVL(A.COUNT, 0) AS COUNT FROM ( SELECT TO_CHAR(DATETIME, 'HH24') AS HOUR, COUNT(*) AS COUNT FROM ANIMAL_OUTS GROUP BY TO_CHAR(DATETIME, 'HH24') ORDER BY TO_CHAR(DATETIME, 'HH24') ) A, ( SELECT LEVEL-1 …

JOIN - 오랜 기간 보호한 동물(1)

1분

1. 오랜 기간 보호한 동물(1) A. 문제 위 프로그래머스 사이트에 접속하여 문제를 확인해주세요. B. 내 답안 -- Oracle SELECT A.NAME, A.DATETIME FROM ( SELECT INS.NAME AS NAME, INS.DATETIME AS DATETIME FROM ANIMAL_INS INS LEFT OUTER JOIN ANIMAL_OUTS OUTS ON (INS.ANIMAL_ID=OUTS.ANIMAL_ID) WHERE OUTS.ANIMAL_ID IS NULL ORDER BY INS.DATETIME ASC …

JOIN - 있었는데요 없었습니다

1분

1. 있었는데요 없었습니다 A. 문제 위 프로그래머스 사이트에 접속하여 문제를 확인해주세요. B. 내 답안 -- Oracle SELECT INS.ANIMAL_ID, INS.NAME FROM ANIMAL_INS INS JOIN ANIMAL_OUTS OUTS ON (INS.ANIMAL_ID=OUTS.ANIMAL_ID) WHERE INS.DATETIME > OUTS.DATETIME ORDER BY INS.DATETIME; a. 회고 내 풀이 INNER JOIN 문제. ANIMAL_INS, ANIMAL_OUTS 테이블의 PK 값이라고 생각되는 ANIMAL_ID로 …

JOIN - 없어진 기록 찾기

1분

1. 없어진 기록 찾기 A. 문제 위 프로그래머스 사이트에 접속하여 문제를 확인해주세요. B. 내 답안 -- Oracle SELECT OUTS.ANIMAL_ID, OUTS.NAME FROM ANIMAL_INS INS RIGHT OUTER JOIN ANIMAL_OUTS OUTS ON (INS.ANIMAL_ID=OUTS.ANIMAL_ID) WHERE INS.DATETIME IS NULL ORDER BY ANIMAL_ID; a. 회고 내 풀이 JOIN문제이다. ANIMAL_ID를 기준으로 OUTER JOIN을 시도한다. RIGHT …

String, Date - 중성화 여부 파악하기

0분

1. 중성화 여부 파악하기 A. 문제 위 프로그래머스 사이트에 접속하여 문제를 확인해주세요. B. 내 답안 -- Oracle SELECT ANIMAL_ID, NAME, CASE WHEN SEX_UPON_INTAKE LIKE 'Neutered%' THEN 'O' WHEN SEX_UPON_INTAKE LIKE 'Spayed%' THEN 'O' ELSE 'X' END FROM ANIMAL_INS ORDER BY ANIMAL_ID; a. 회고 내 풀이 CASE문을 사용했다. 문자열에 특정 단어가 …

IS NULL - NULL 처리하기

1분

1. NULL 처리하기 A. 문제 위 프로그래머스 사이트에 접속하여 문제를 확인해주세요. B. 내 답안 -- Oracle -- 코드를 입력하세요 SELECT ANIMAL_TYPE, NVL2(NAME, NAME, 'No name'), SEX_UPON_INTAKE FROM ANIMAL_INS ORDER BY ANIMAL_ID; a. 회고 내 풀이 NULL 처리 함수는 NVL, NVL2가 있다. NVL([NULL인지 여부를 검사할 데이터 또는 열(필수)], [앞의 데이터가 NULL일 …

String, Date - 이름에 EL이 들어가는 동물 찾기

0분

1. 이름에 EL이 들어가는 동물 찾기 A. 문제 위 프로그래머스 사이트에 접속하여 문제를 확인해주세요. B. 내 답안 -- Oracle -- 코드를 입력하세요 SELECT ANIMAL_ID, NAME FROM ANIMAL_INS WHERE UPPER(NAME) LIKE UPPER('%EL%') AND ANIMAL_TYPE='Dog' ORDER BY NAME ASC; a. 회고 내 풀이 문자 함수인 UPPER을 사용하여 풀었다. LOWER로도 풀릴 …

String, Date - 루시와 엘라 찾기

1분

1. 루시와 엘라 찾기 A. 문제 위 프로그래머스 사이트에 접속하여 문제를 확인해주세요. B. 내 답안 -- Oracle -- 코드를 입력하세요 SELECT ANIMAL_ID, NAME, SEX_UPON_INTAKE FROM ANIMAL_INS WHERE INITCAP(NAME) IN (INITCAP('LUCY'), INITCAP('ELLA'), INITCAP('PICKLE'), INITCAP('ROGAN'), INITCAP('SABRINA'), INITCAP('MITTY')) ORDER BY ANIMAL_ID; a. 회고 내 풀이 단순하게 문자열을 IN 뒤에 그대로 입력해도 풀리는 문제다. …

2021 Dev-Matching - 헤비 유저가 소유한 장소

0분

1. 헤비 유저가 소유한 장소 A. 문제 위 프로그래머스 사이트에 접속하여 문제를 확인해주세요. B. 내 답안 -- Oracle SELECT A.ID, A.NAME, A.HOST_ID FROM PLACES A, (SELECT HOST_ID FROM PLACES GROUP BY HOST_ID HAVING COUNT(HOST_ID)>1) B WHERE A.HOST_ID=B.HOST_ID; a. 회고 내 풀이 서브 쿼리를 사용하고 조인을 진행했다. 참고문헌 2021 …

연습문제 - 오랜 기간 보호한 동물(2)

1분

1. 오랜 기간 보호한 동물(2) A. 문제 위 프로그래머스 사이트에 접속하여 문제를 확인해주세요. B. 내 답안 -- Oracle SELECT * FROM (SELECT A.ANIMAL_ID, A.NAME FROM ANIMAL_INS A, ANIMAL_OUTS B WHERE A.ANIMAL_ID=B.ANIMAL_ID ORDER BY (B.DATETIME - A.DATETIME) DESC) WHERE ROWNUM <=2; a. 회고 내 풀이 inner join을 사용하고 …

데이터 베이스에 대해 공부해보자.

0분

1. DB A. 오라클 (Oracle) a. Bug [오라클] [오류] SCOTT 계정 테이블 생성 오류 — mildsalmon (blex.me) 2. SQL 코딩테스트 A. 프로그래머스 [SQL] 프로그래머스 문제풀이 — mildsalmon (blex.me) B. HackerRank [SQL] HackerRank 문제풀이 — mildsalmon (blex.me)

[프로그래머스] 입양 시각 구하기_1

2분

1. 입양 시각 구하기_1 A. 문제 위 프로그래머스 사이트에 접속하여 문제를 확인해주세요. B. 내 답안 a. 서브 쿼리 SELECT HOUR, COUNT FROM ( SELECT TO_CHAR(DATETIME, 'HH24') AS HOUR, COUNT(TO_CHAR(DATETIME, 'HH24')) AS COUNT FROM ANIMAL_OUTS GROUP BY TO_CHAR(DATETIME, 'HH24') ORDER BY TO_CHAR(DATETIME, 'HH24') ) WHERE HOUR >=9 AND HOUR < …

[SQL] 프로그래머스 문제풀이

2분

1. Oracle A. Level 1 a. SELECT [프로그래머스] 동물의 아이디와 이름 — mildsalmon (blex.me) [프로그래머스] 모든 레코드 조회하기 — mildsalmon (blex.me) [프로그래머스] 상위 n개 레코드 — mildsalmon (blex.me) [프로그래머스] 아픈 동물 찾기 — mildsalmon (blex.me) [프로그래머스] 어린 동물 찾기 — mildsalmon (blex.me) [프로그래머스] 여러 기준으로 정렬하기 — mildsalmon (blex.me) [프로그래머스] …

[SQL] HackerRank 문제풀이

0분

1. SELECTA. 단일행 함수a. 숫자 함수[HackerRank] Weather Observation Station 3 — mildsalmon (blex.me) B. 다중행 함수a. 집계 함수[HackerRank] Weather Observation Station 4 — mildsalmon (blex.me) 2. WHEREA. 연산자[HackerRank] Revising the Select Query II — mildsalmon (blex.me) 3. 윈도우 함수Occupations — mildsalmon (blex.me) 3. JoinTop Competitors — mildsalmon (blex.me)

[HackerRank] Weather Observation Station 4

1분

1. Weather Observation Station 4 A. 문제 STATION 테이블에서 CITY 필드와 중복제거한 CITY 필드 사이의 차이를 구하라. 뭔말인지 이해가 잘 안가서 밑에 예시를 봤다 CITY 필드의 값이 'New York', 'New York', 'Bengalaru' 이라고 하자. 여기는 2개의 다른 도시 이름이 있다. 따라서 query의 return은 1이다. Total number of records - number …

[프로그래머스] 동명 동물 수 찾기

1분

1. 동명 동물 수 찾기 A. 문제 위 프로그래머스 사이트에 접속하여 문제를 확인해주세요. B. 내 답안 -- Oracle SELECT NAME, COUNT FROM ( SELECT NAME, COUNT(NAME) AS COUNT FROM ANIMAL_INS GROUP BY NAME ORDER BY NAME ASC ) WHERE COUNT >=2; -- Oracle SELECT NAME, COUNT(NAME) AS COUNT FROM …

매일 코딩테스트, SQL 한 문제 멤버 모집

0분

1. 계기 안녕하세요. 제가 이번에 코딩 테스트를 준비하면서 1일 1커밋, 1일 1블로그, 1일 1백준을 시도해보고 있습니다. 이번 도전은 저 혼자 하는 것보다, 다같이 해보면 좋을꺼 같아서 이렇게 글을 올려봅니다. 2. 방식 텔레그램 채널을 이용해서 진행합니다. 매일 새벽 4시쯤 아래 사진처럼 코테, SQL 문제가 하나씩 제시됩니다. 여러분들은 하루동안 이 문제들을 풀고 …

[프로그래머스] 중복 제거하기

1분

1. 중복 제거하기 A. 문제 위 프로그래머스 사이트에 접속하여 문제를 확인해주세요. B. 내 답안 SELECT COUNT(DISTINCT(NAME)) FROM ANIMAL_INS WHERE name IS NOT NULL; SELECT COUNT(NAME) FROM( SELECT NAME FROM ANIMAL_INS GROUP BY NAME ); a. 회고 내 풀이 group by를 사용하여 풀었다. 조금 찾아보고 몇번 해보니 COUNT 안에 DISTINCT가 가능하단걸 …

[HackerRank] Weather Observation Station 3

0분

1. Weather Observation Station 3 A. 문제 STATION테이블에서 짝수 ID number를 가지는 CITY 이름을 출력하라. 답변에는 중복을 제외한다. B. 내 답안 SELECT DISTINCT city FROM station WHERE mod(id, 2)=0; a. 회고 반성 sql에서도 mod가 되는지 몰랐었다. C. 문제 해설 이해한 내용을 바탕으로 작성했습니다. 짝수 ID를 출력해야하니, MOD를 사용하면 된다. 참고문헌 …