Aggregation - The Blunder (SQL)
2022. 12. 7. 19:28
알고리즘/HackerRank
Summary 이 문제는 키보드가 고장나 Salary 에 0을 입력하지 못했을 경우에 대해서 오차를 구하는 문제였다. 기존의 Salary 의 평균 값을 가져오고 또 0 을 제외한 Salary 의 연봉을 가져와 뺀 값을 구하면 된다. 기존의 Salary 의 평균은 다음과 같이 쉽게 가져올 수 있다. avg(salary) 다음으로 Salary 에서 0 이 없을 경우에 대한 평균을 구해야 한다. 그럼, Salary 에서 0을 제외하기 위해서 REPLACE 문법을 사용해서 0을 제거해줄 수 있었다. replace(salary, '0', '') 그렇게 0을 제외한 Salary 의 평균을 구해주면 된다. avg(replace(salary, '0', '')) 그리고 문제를 보면 반올림을 하라는 문구가 보여 각 평균에..
Advanced Select - The PADS (SQL)
2022. 12. 6. 18:00
알고리즘/HackerRank
Summary 이 문제는 SELECT 의 결과를 어떻게 하나의 문구로 합칠것인가에 대해서 묻는 문제였다. 첫 번째 문제로는 이름과 직업의 앞 자리를 가져와 () 괄호 안에 넣어주어 하나로 만들어주어야 한다. 이름은 그대로 가져오면 되었기 때문에 문제가 되지 않았고 () 괄호 안에 직업의 맨 앞 한자리 문자를 가져와 넣어주어야 한다. LEFT 문법을 사용해 직업의 맨 앞 한자리만 가져온다. 그리고 이름과 괄호를 포함한 문자를 합쳐주어야 한다. 합치기 위해서 CONCAT 문법을 사용해 하나로 합쳐주었다. CONCAT 으로 합쳐질 문구는 다음과 같다. name '(' LEFT(occupation, 1) -> occupation 의 왼쪽 1자리의 문자만 가져온다. ')' 따라서, CONCAT 을 사용해 합쳐서 ..
Advanced Select - Type of Triangle (SQL)
2022. 12. 5. 17:17
알고리즘/HackerRank
Summary 이 문제는 삼각형의 조건에 충족하는지 그리고 조건에 충족한다면 어떤 삼각형인지 타입을 구분하는 문제라고 보면 된다. 삼각형이 성립되는 조건에 대해서 알고 있어야 하고 조건 하에 각 삼각형의 타입을 어떻게 구분할 수 있을지 생각해봐야 한다. 삼각형이 성립되는 조건은 다음과 같다. (가장 큰 변의 길이) < (나머지 두 변의 합) 예를 들어, A B C 로 이루어진 삼각형에서 A 변의 길이가 가장 크다면 A < (B + C) 가 되어야 삼각형이 성립된다. 이 문제에서 정의하는 삼각형의 타입은 다음과 같다. 세 변의 길이가 모두 같으면 '정삼각형' 두 변의 길이가 같고 나머지 하나의 길이가 다르면 '이등변삼각형' 세 변의 길이가 다 다르면 '일반적인 삼각형' 그리고 삼각형이 성립하지 않는다면 '..
[Programmers/SQL] 입양 시각 구하기(2)
2022. 9. 25. 16:01
알고리즘/Programmers
문제 설명 ANIMAL_OUTS 테이블은 동물 보호소에서 입양 보낸 동물의 정보를 담은 테이블입니다. ANIMAL_OUTS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, NAME, SEX_UPON_OUTCOME는 각각 동물의 아이디, 생물 종, 입양일, 이름, 성별 및 중성화 여부를 나타냅니다. NAME TYPE NULLABLE ANIMAL_ID VARCHAR(N) FALSE ANIMAL_TYPE VARCHAR(N) FALSE DATETIME DATETIME FALSE NAME VARCHAR(N) TRUE SEX_UPON_OUTCOME VARCHAR(N) FALSE 보호소에서는 몇 시에 입양이 가장 활발하게 일어나는지 알아보려 합니다. 0시부터 23시까지, 각..
[GCP] Cloud SQL for mySQL: Qwik Start (간단한 실습)
2021. 5. 5. 03:33
스터디&교육/2021 Google Cloud Study Jam
cloud SQL 을 통해 인스턴스를 생성해보고 cloud shell 을 통해 접속해 데이터베이스를 생성해보는 과정을 실습해보았다. 1. Cloud SQL instance 생성하기 Cloud SQL instance 를 생성하기 위해서는 메뉴에서 [DATABASES] - [SQL] 에 접속한다. [CREATE INSTANCE] 를 클릭해 인스턴스를 생성해준다. 그럼 다음에서 MySQL 을 선택 ! [Choose MySQL] Instance ID 는 하고싶은 이름으로 정해주고 Password 는 GENERATE 를 클릭해서 임시로 지정해주었다. 임시로 지정해준 패스워드니까 show password 를 클릭해 패스워드를 저장해두었다. Region 은 원하는 지역으로 설정해주면 되는데 나는 서울로 지정해주었다...