전체 글 99

[프로그래머스/SQL 고득점 Kit] 강원도에 위치한 생산공장 목록 출력하기

문제 다음은 식품공장의 정보를 담은 FOOD_FACTORY 테이블입니다. FOOD_FACTORY 테이블은 다음과 같으며 FACTORY_ID, FACTORY_NAME, ADDRESS, TLNO는 각각 공장 ID, 공장 이름, 주소, 전화번호를 의미합니다. Column name Type Nullable FACTORY_ID VARCHAR(10) FALSE FACTORY_NAME VARCHAR(50) FALSE ADDRESS VARCHAR(100) FALSE TLNO VARCHAR(20) TRUE FOOD_FACTORY 테이블에서 강원도에 위치한 식품공장의 공장 ID, 공장 이름, 주소를 조회하는 SQL문을 작성해주세요. 이때 결과는 공장 ID를 기준으로 오름차순 정렬해주세요. 요약 1. 공장 ID, 공장 이름..

Study/SQL 2022.11.09

[프로그래머스/SQL 고득점 Kit] 3월에 태어난 여성 회원 목록 출력하기

문제 다음은 식당 리뷰 사이트의 회원 정보를 담은 MEMBER_PROFILE 테이블입니다. MEMBER_PROFILE 테이블은 다음과 같으며 MEMBER_ID, MEMBER_NAME, TLNO, GENDER, DATE_OF_BIRTH는 회원 ID, 회원 이름, 회원 연락처, 성별, 생년월일을 의미합니다. Column name Type Nullable MEMBER_ID VARCHAR(100) FALSE MEMBER_NAME VARCHAR(50) FALSE TLNO VARCHAR(50) TRUE GENDER VARCHAR(1) TRUE DATE_OF_BIRTH DATE TRUE MEMBER_PROFILE 테이블에서 생일이 3월인 여성 회원의 ID, 이름, 성별, 생년월일을 조회하는 SQL문을 작성해주세요. ..

Study/SQL 2022.11.09

[프로그래머스/SQL 고득점 Kit] 흉부외과 또는 일반외과 의사 목록 출력하기

문제 다음은 종합병원에 속한 의사 정보를 담은DOCTOR 테이블입니다. DOCTOR 테이블은 다음과 같으며 DR_NAME, DR_ID, LCNS_NO, HIRE_YMD, MCDP_CD, TLNO는 각각 의사이름, 의사ID, 면허번호, 고용일자, 진료과코드, 전화번호를 나타냅니다. Column Name Type Nullable DR_NAME VARCHAR(20) FALSE DR_ID VARCHAR(10) FALSE LCNS_NO VARCHAR(30) FALSE HIRE_YMD DATE FALSE MCDP_CD VARCHAR(6) TRUE TLNO VARCHAR(50) TRUE DOCTOR 테이블에서 진료과가 흉부외과(CS)이거나 일반외과(GS)인 의사의 이름, 의사ID, 진료과, 고용일자를 조회하는 SQL..

Study/SQL 2022.11.08

[프로그래머스/SQL 고득점 Kit] 재구매가 일어난 상품과 회원 리스트 구하기

문제 다음은 어느 의류 쇼핑몰의 온라인 상품 판매 정보를 담은 ONLINE_SALE 테이블 입니다. ONLINE_SALE 테이블은 아래와 같은 구조로 되어있으며 ONLINE_SALE_ID, USER_ID, PRODUCT_ID, SALES_AMOUNT, SALES_DATE는 각각 온라인 상품 판매 ID, 회원 ID, 상품 ID, 판매량, 판매일을 나타냅니다. Column name Type Nullable ONLINE_SALE_ID INTEGER FALSE USER_ID INTEGER FALSE PRODUCT_ID INTEGER FALSE SALES_AMOUNT INTEGER FALSE SALES_DATE DATE FALSE 동일한 날짜, 회원 ID, 상품 ID 조합에 대해서는 하나의 판매 데이터만 존재합니..

Study/SQL 2022.11.08

[프로그래머스/SQL 고득점 Kit] 12세 이하인 여자 환자 목록 출력하기

문제 다음은 종합병원에 등록된 환자정보를 담은 PATIENT 테이블입니다. PATIENT 테이블은 다음과 같으며 PT_NO, PT_NAME, GEND_CD, AGE, TLNO는 각각 환자번호, 환자이름, 성별코드, 나이, 전화번호를 의미합니다. Column name Type Nullable PT_NO VARCHAR(10) FALSE PT_NAME VARCHAR(20) FALSE GEND_CD VARCHAR(1) FALSE AGE INTEGER FALSE TLNO VARCHAR(50) TRUE PATIENT 테이블에서 12세 이하인 여자환자의 환자이름, 환자번호, 성별코드, 나이, 전화번호를 조회하는 SQL문을 작성해주세요. 이때 전화번호가 없는 경우, 'NONE'으로 출력시켜 주시고 결과는 나이를 기준으..

Study/SQL 2022.11.08

[프로그래머스/SQL 고득점 Kit] 과일로 만든 아이스크림 고르기

문제 다음은 아이스크림 가게의 상반기 주문 정보를 담은 FIRST_HALF 테이블과 아이스크림 성분에 대한 정보를 담은 ICECREAM_INFO 테이블입니다. FIRST_HALF 테이블 구조는 다음과 같으며, SHIPMENT_ID, FLAVOR, TOTAL_ORDER 는 각각 아이스크림 공장에서 아이스크림 가게까지의 출하 번호, 아이스크림 맛, 상반기 아이스크림 총주문량을 나타냅니다. FIRST_HALF 테이블의 기본 키는 FLAVOR입니다. NAME TYPE NULLABLE SHIPMENT_ID INT(N) FALSE FLAVOR VARCHAR(N) FALSE TOTAL_ORDER INT(N) FALSE ICECREAM_INFO 테이블 구조는 다음과 같으며, FLAVOR, INGREDITENT_TYPE..

Study/SQL 2022.11.08

[백준/파이썬] 4619. 루트

문제 양의 정수 B와 N이 주어졌을 때, B에 가장 가까운 AN의 정수 A를 찾는 프로그램을 작성하시오. AN은 B보다 작거나, 크거나, 같다. 입력 입력은 여러 테스트 케이스로 이루어져 있다. 각 테스트 케이스는 한 줄로 이루어져 있고, B와 N이 주어진다. (1 ≤ B ≤ 1,000,000, 1 ≤ N ≤ 9) 입력의 마지막 줄에는 0이 2개 주어진다. 출력 각 테스트 케이스에 해당하는 A를 출력한다. 아이디어 - 1부터 B까지 N제곱값을 구하자 (A는 B보다 작거나 같은 수 중 하나.) ex) B가 4일 경우, 1부터 4까지의 N제곱을 구한다. 1의 N제곱,, 2의 N제곱,, 3의 N제곱,, - B가 최대 1000000까지 가능한데 제곱의 경우 값이 쉽게 커지므로 1부터 B까지 다 돌 필요는 없음...

[MySQL/Spring] 한글 인코딩 문제 (java.sql.SQLException: Incorrect string value)

java.sql.SQLException: Incorrect string value: '\xEC\x98\xA4\xEB\x8A\x98...' for column MySQL에서 table을 생성할 때 인코딩형식을 미리 정의해주지 않으면 위와같은 에러가 발생한다. 테이블을 만들 때 인코딩 형식을 지정해주면 되지만, 그렇지 못한 경우 ALTER TABLE을 이용해 인코딩 에러를 해결할 수 있다. alter table TABLE_NAME default character set utf8 collate utf8_general_ci; 테이블 생성 시 인코딩 형식 지정해주기 테이블 스키마 뒤에 default character set utf8 collate utf8_general_ci 추가 create table TABLE..

Study/DataBase 2022.04.06

[백준/파이썬] 2108. 통계학

문제 수를 처리하는 것은 통계학에서 상당히 중요한 일이다. 통계학에서 N개의 수를 대표하는 기본 통계값에는 다음과 같은 것들이 있다. 단, N은 홀수라고 가정하자. 산술평균 : N개의 수들의 합을 N으로 나눈 값 중앙값 : N개의 수들을 증가하는 순서로 나열했을 경우 그 중앙에 위치하는 값 최빈값 : N개의 수들 중 가장 많이 나타나는 값 범위 : N개의 수들 중 최댓값과 최솟값의 차이 N개의 수가 주어졌을 때, 네 가지 기본 통계값을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 수의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 단, N은 홀수이다. 그 다음 N개의 줄에는 정수들이 주어진다. 입력되는 정수의 절댓값은 4,000을 넘지 않는다. 출력 첫째 줄에는 산술평균을 출력한다. 소수점 이하 ..

[백준/파이썬] 1181. 단어 정렬

문제 알파벳 소문자로 이루어진 N개의 단어가 들어오면 아래와 같은 조건에 따라 정렬하는 프로그램을 작성하시오. 길이가 짧은 것부터 길이가 같으면 사전 순으로 입력 첫째 줄에 단어의 개수 N이 주어진다. (1 ≤ N ≤ 20,000) 둘째 줄부터 N개의 줄에 걸쳐 알파벳 소문자로 이루어진 단어가 한 줄에 하나씩 주어진다. 주어지는 문자열의 길이는 50을 넘지 않는다. 출력 조건에 따라 정렬하여 단어들을 출력한다. 단, 같은 단어가 여러 번 입력된 경우에는 한 번씩만 출력한다. 아이디어 - 중복을 쉽게 제거할 수 있고, 정렬할 때 사용하기 쉬운 딕셔너리로 입력값을 저장 - lambda 를 사용해서 정렬 조건을 여러개를 두자. (우선순위 1: 길이가 짧은 것 , 우선순위 2: 길이가 같은 경우 사전 순으로) ..