본문 바로가기

하루 30분 SQL 공부하기

(13)
[MySQL] 프로그래머스 진료과별 총 예약 횟수 출력하기 https://school.programmers.co.kr/learn/courses/30/lessons/132202 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제 분석 난이도 : level 2  문제 요구사항 APPOINTMENT 테이블에서 2022년 5월에 예약한 환자 수를 진료과코드 별로 조회하는 SQL문을 작성해주세요. 이때, 컬럼명은 '진료과 코드', '5월예약건수'로 지정해주시고 결과는 진료과별 예약한 환자 수를 기준으로 오름차순 정렬하고, 예약한 환자 수가 같다면 진료과 코드를 기준으로 오름차순 정렬해주세요.  문제 풀이  1. DATE_FO..
[MySQL] 프로그래머스 성분으로 구분한 아이스크림 총 주문량 https://school.programmers.co.kr/learn/courses/30/lessons/133026 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제 분석난이도 : level 2테이블 : FIRST_HALF(SHIPMENT_ID, FLAVOR, TOTAL_ORDER), ICECREAM_INFO(FLAVOR, INGREDITENT_TYPE)  문제 요구사항 상반기 동안 각 아이스크림 성분 타입과 성분 타입에 대한 아이스크림의 총주문량을 총주문량이 작은 순서대로 조회하는 SQL 문을 작성해주세요. 이때 총주문량을 나타내는 컬럼명은 TOTAL_O..
[MySQL] 프로그래머스 자동차 종류 별 특정 옵션이 포함된 자동차 수 구하기 https://school.programmers.co.kr/learn/courses/30/lessons/151137 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제 분석난이도 : level 2 문제 요구사항:CAR_RENTAL_COMPANY_CAR 테이블에서 '통풍시트', '열선시트', '가죽시트' 중 하나 이상의 옵션이 포함된 자동차가 자동차 종류 별로 몇 대인지 출력하는 SQL문을 작성해주세요. 이때 자동차 수에 대한 컬럼명은 CARS로 지정하고, 결과는 자동차 종류를 기준으로 오름차순 정렬해주세요.  문제 풀이GROUP BY를 사용해서 CAR_TYP..
[SQL 코테준비] 가격이 제일 비싼 식품의 정보 출력하기, 잡은 물고기 중 가장 큰 물고기의 길이 구하기 프로그래머스 | 가격이 제일 비싼 식품의 정보 출력하기https://school.programmers.co.kr/learn/courses/30/lessons/131115 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 해결 방법 : 가격을 기준으로 내림 차순 정렬을 한다. 제일 값이 비싼 상위의 한가지만 출력한다.  SELECT PRODUCT_ID, PRODUCT_NAME, PRODUCT_CD, CATEGORY, PRICEFROM FOOD_PRODUCTORDER BY PRICE DESCLIMIT 1  | 잡은 물고기 중 가장 큰 물고기의 길이 구하기 https://scho..
[MySQL] 프로그래머스 코딩테스트 문제 풀이 SELECT 과일로 만든 아이스크림 고르기, 조건에 부합하는 중고거래 댓글 조회하기 과일로 만든 아이스크림 고르기https://school.programmers.co.kr/learn/courses/30/lessons/133025# 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr SELECT FIRST_HALF.FLAVORFROM FIRST_HALF inner join ICECREAM_INFOon FIRST_HALF.FLAVOR = ICECREAM_INFO.FLAVORWHERE TOTAL_ORDER >=3000 AND INGREDIENT_TYPE = 'fruit_based'order by TOTAL_ORDER desc;  조건에 부합하는 중고..
[SQL/DFL] SELECT문의 WHERE절과 논리, 비교, SQL 연산자 WHERE절 SELECT [ALL|DISTINCT] {COLUM_name [[AS] COLUM_alias],}+ | *}FORM TABLE_LIST[WHERE 투플_조건식]WHERE절을 사용하면 투플 조건식을 이용하여, 테이블에서 조건에 맞는 투플만을 선택할 수 있다. 여기서 투플_조건식이란 비교연산자, SQL연산자, 논리연산자를 의미한다. 기본예제) SELECT PLAYER_ID, PLAYER_NAME, BACK_NO, TEAM_IDFROM PLAYERWHERE TEAM_ID = 'K06';WHERE절을 사용해서 TEAM_ID가 'K06'인것만 출력할 수 있다.  1. 연산자의 종류 연산자의 종류는 비교연산자, SQL 연산자, 논리 연산자가 있다. 3가지 연산자의 우선순위는 비교 연산자와 SQL연산자..
[SQL] SQL을 공부하기전 알면 좋은 기본 지식 SQL의 기본 1) 출력은 항상 테이블 검색 질의의 결과는 항상 테이블이다. 예를들어 다음과 같이 함수를 사용해서 값이 하나가 나올 상황을 살펴보자 이 경우에도 SQL은 무조건 테이블로 출력값이 나온다.SELECT LENGTH('SQL Expert') AS ColumnLenght;  2) FROM은 생략 가능? 불가능? MySQL, SQL server에서는 FROM 절도 생략가능하다. 하지만 Oracle에서는 절대 FROM 절 생략 불가하다.SELECT LENGTh('SQL Expert') AS ColumnLenght;FROM DUAL;이와 같이 함수를 출력할 때도 Oracle의 가짜 테이블이자 기본 테이블인 DUAL을 FROM해야함. DUAL테이블은 사용자 SYS가 소유하고 있는 테이블이며 모든 사용자..
[SQL/DML] SELECT 검색문의 SELECT 절 기초 쿼리 알아보기 SELECT 문일반 형식SELECT [ALL|DISTINCT] {COLUM_name [[AS] COLUM_alias],}+ | *}FORM TABLE_LIST[WHERE 투플_조건식][GROUP BY 컬럼명 [HAVING 그룹 조건식]][ORDER BY {컬럼명| 컬럼_별칭| 컬럼_위치 [ASC|DESC],}+][LIMIT [offset,] row_count];투플 조건식 : 컬러명, 비교연산자, SQL연산자, 숫자/문자/표현식 컬럼명[]은 생략 가능하다는 의미.+ : 1회 이상 반복이라는 의미  1) SELECT문의 실행순서SELECT문의 실행순서는 다음과 같다 FROM : 실행 대상 테이블을 참조한다. WHERE : 조건에 맞는 투플만 선택한다. GROUP BY : 기준 컬럼의 값에 따라, 투플들을..