SQL 26

[SQL][BIT] 조건에 맞는 개발자 찾기

조건에 맞는 개발자 찾기 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 내 풀이D.SKILL_CODE & S.CODE = S.CODEAND 한 값이 스킬의 CODE 값이 나오면 둘다 그 값을 가진 것이므로D.SKILL_CODE & S.CODE = S.CODE📍주의JOIN 시 중복이 생길 수 있는지 신경쓰기DEVELOPERS.SKILL_CODE는 비트 단위로 여러 스킬을 동시에 포함할 수 있어서, 하나의 개발자가 여러 행의 SKILLCODES에 매치될 수 있음→ 동일한 개발자 정보가 여러 번 나올 수 있으므로, 중복 제거를 위해 DISTINCT를 써야 합니다. 개발자의 SKILL_CODE가 400 (=..

코딩테스트/SQL 2024.11.01

[SQL][OVER] 대장균의 크기에 따라 분류하기 2

대장균의 크기에 따라 분류하기 2 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr   PERCENT_RANK() : 상대 순위 함수로, 현재 행 값에 대해 0~1 사이의 상대값을 리턴 OVER() : 각 행별로 () 안의 특정 기준에 따라 필요한 집합을 구해 함수를 적용BETWEEN 하면 안되는 이유 ->  소수점 N번째까지 모두 포함할 수 없기때문SELECT ID, CASE WHEN P.PERCENT 참고) SQL OVER절 https://velog.io/@wltn716/SQL-Over-%EC%A0%88

코딩테스트/SQL 2024.11.01

[SQL][IF][서브쿼리] 자동차 대여 기록에서 대여중 / 대여 가능 여부 구분하기

자동차 대여 기록에서 대여중 / 대여 가능 여부 구분하기 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr   풀이IF (조건, 맞을경우, 틀릴 경우)여러번의 대여 기록이 있는 CAR_ID도 결과에는 현재에 맞는 결과 1개만 나와야 함GROUP BY CAR_ID로 묶고CAR_ID가 서브쿼리(기간내를 탐색하는 서브쿼리) 안에 속하는지 여부를 IF문으로 판단SELECT CAR_ID, IF (CAR_ID IN (SELECT CAR_ID FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY ..

코딩테스트/SQL 2024.08.09

[SQL] DATE 관련 문법

CURDATE() : 현재 날짜를 얻음CURTIME() : 현재 시간을 얻음NOW() : 현재 날짜 시간을 얻음DATE(문자열) : 문자열을 날짜로 변환TIME(문자열) : 문자열을 시간으로 변환YEAR(날짜) : 연도MONTH(날짜) : 월 /  MONTHNAME(날짜) : 월 영문DAY(날짜) : 일 / DAYNAME(날짜) : 일 영문WEEKDAY(날짜) : 요일 (월요일 =0)​ADDDATE(날짜, INTERVALE 양수음수 단위) ※INTERVAL 뒤에 ,로 연결하면 안되고 띄어쓰기로 쭉쭉 이어나가기DATEDIFF(날짜1,날짜2) : 날짜1,2의 일수 차TIMEDIFF(시간1,시간2) : 시간1,2의 시간 차DATE_FORMAT(날짜,표현방식)IF(조건,참,거짓)CASE WHEN 조건 THEN ..

코딩테스트/SQL 2024.08.09

[SQL] [ROUND] [AVG] [JOIN] [GROUP BY] 부서별 평균 연봉 조회하기

부서별 평균 연봉 조회하기 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  HR_DEPARTMENT와 HR_EMPLOYEES 테이블을 이용해 부서별 평균 연봉을 조회하려 합니다. 부서별로 부서 ID, 영문 부서명, 평균 연봉을 조회하는 SQL문을 작성해주세요.평균연봉은 소수점 첫째 자리에서 반올림하고 컬럼명은 AVG_SAL로 해주세요.결과는 부서별 평균 연봉을 기준으로 내림차순 정렬해주세요.  내 풀이SELECT E.DEPT_ID, DEPT_NAME_EN, ROUND(AVG(SAL),0) AS AVG_SALFROM HR_EMPLOYEES EJOIN HR_DE..

카테고리 없음 2024.08.09

[SQL][YEAR][DATE_FORMAT][ROUND][AVG][GROUP BY] 연도 별 평균 미세먼지 농도 조회하기

연도 별 평균 미세먼지 농도 조회하기 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr  풀이YEAR vs DATE_FORMATDATE_FORMAT(YM, '%Y') 는 문자열로 반환 -> fail뜸YEAR(YM) 은 정수로 반환소수점 ROUND(숫자, 자릿수) -> 소수점 3번째 자리에서 반올림하면 자릿수 2평균AVG()GROUP BY 에도 몇번째 값으로 하는지 숫자만 넣어도 됨GROUP BY 1ORDER BY 1추가) 실수 -> 정수로 변경: CAST(23.1) = 23SELECT YEAR(YM) AS YEAR, ROUND(AVG(PM_VAL1),2) AS ..

코딩테스트/SQL 2024.08.09

[SQL][CASE-WHEN][DATE_FORMAT][JOIN][IN][GROUP BY] SQL 문제 풀이 모음

SQL 문제 풀이 모음 조건별로 분류하여 주문상태 출력FOOD_ORDER 테이블에서 2022년 5월 1일을 기준으로 주문 ID, 제품 ID, 출고일자, 출고여부를 조회하는 SQL문을 작성해주세요. 출고여부는 2022년 5월 1일까지 출고완료로 이 후 날짜는 출고 대기로 미정이면 출고미정으로 출력해주시고, 결과는 주문 ID를 기준으로 오름차순 정렬해주세요.SELECT ORDER_ID, PRODUCT_ID, DATE_FORMAT(OUT_DATE, "%Y-%m-%d") AS OUT_DATE, CASE WHEN OUT_DATE   대여 기록이 존재하는 자동차 리스트 구하기AASELECT DISTINCT C.CAR_IDFROM CAR_RENTAL_COMPANY_CAR AS CJOIN CAR_RENTAL_C..

코딩테스트/SQL 2024.08.03