[프로그래머스 SQL] Lv.1 - 조건에 맞는 도서 리스트 출력하기
·
SQL/SELECT
https://school.programmers.co.kr/learn/courses/30/lessons/144853 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 풀이출판연도가 "2021"이고, 카테고리가 "인문"인 행을 필터링한다. 출판연도 조건절에는 YEAR 키워드 또는 LIKE 키워드를 사용할 수 있다.출판일 오름차순 정렬한다.도서 ID와 출판일을 조회한다. 출판일 데이트 포맷을 위해 DATE_FORMAT 키워드를 사용한다.SELECT BOOK_ID, DATE_FORMAT(PUBLISHED_DATE, '%Y-%m-%d') AS PUBLISHED_DATEFROM BOOKWHER..
[프로그래머스 SQL] Lv.1 - 12세 이하인 여자 환자 목록 출력하기
·
SQL/SELECT
https://school.programmers.co.kr/learn/courses/30/lessons/132201 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 풀이12세 이하이면서, 성별코드가 "W"인 행을 필터링한다.나이 내림차순, 환자이름 오름차순 정렬한다.환자 이름, 환자 번호, 성별 코드, 나이 전화번호를 조회한다. 이때 전화번호가 없는 경우를 처리하기 위해 IFNULL 키워드를 사용한다.SELECT PT_NAME, PT_NO, GEND_CD, AGE, IFNULL(TLNO, 'NONE') AS TLNOFROM PATIENTWHERE AGE
[프로그래머스 SQL] Lv.1 - 인기있는 아이스크림
·
SQL/SELECT
https://school.programmers.co.kr/learn/courses/30/lessons/133024 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 풀이총 주문량 내림차순, 출하번호 오름차순 정렬한다.아이스크림의 맛을 조회한다.SELECT FLAVORFROM FIRST_HALFORDER BY TOTAL_ORDER DESC, SHIPMENT_ID
[프로그래머스 SQL] Lv.1 - 강원도에 위치한 생산공장 목록 출력하기
·
SQL/SELECT
https://school.programmers.co.kr/learn/courses/30/lessons/131112 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 풀이ADDRESS가 강원도에 위치한 행만 필터링한다. 이때 LIKE 키워드나 LEFT 키워드를 사용할 수 있다.공장 ID를 기준으로 오름차순 정렬한다.공장 ID, 공장 이름, 주소를 조회한다.SELECT FACTORY_ID, FACTORY_NAME, ADDRESSFROM FOOD_FACTORYWHERE # LEFT(ADDRESS, 3) = '강원도' ADDRESS LIKE '강원도%'ORDER BY ..
[프로그래머스 SQL] Lv.1 - 평균 일일 대여 요금 구하기
·
SQL/SELECT
https://school.programmers.co.kr/learn/courses/30/lessons/151136 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 문제 풀이자동차 종류가 "SUV"인 행만 필터링한다.평균을 구하기 위해 AVG 키워드를 사용하고, 반올림을 하기 위해 ROUND 키워드를 사용한다.SELECT ROUND(AVG(DAILY_FEE), 0) AS AVERAGE_FEEFROM CAR_RENTAL_COMPANY_CARWHERE CAR_TYPE = 'SUV'
[프로그래머스 SQL] Lv.1 - 과일로 만든 아이스크림 고르기
·
SQL/SELECT
https://school.programmers.co.kr/learn/courses/30/lessons/133025 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr문제 풀이FIRST_HALF 테이블과 ICECREAM_INFO 테이블을 조인한다.총주문량이 3,000 이상과 주성분이 과일인 아이스크림을 필터링한다.총주문량을 내림차순 정렬한다.아이스크림의 맛을 선택한다.SELECT F.FLAVORFROM FIRST_HALF AS F JOIN ICECREAM_INFO AS I ON F.FLAVOR = I.FLAVORWHERE F.TOTAL_ORDER >= 300..
[프로그래머스 SQL] Lv.1 - 흉부외과 또는 일반외과 의사 목록 출력하기
·
SQL/SELECT
https://school.programmers.co.kr/learn/courses/30/lessons/132203 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr 풀이 과정1. 테이블에서 진료과(MCDP_CD)가 "CS" 또는 "GS"인 컬럼만 필터링한다. (OR 또는 IN 사용)2.  고용일자 내림차순, 이름 오름차순 정렬한다.3. 고용일자를 그냥 출력하면 시분초까지 나오므로 DATE_FORMAT을 사용한다. SELECT DR_NAME, DR_ID, MCDP_CD, DATE_FORMAT(HIRE_YMD, '%Y-%m-%d') as HIRE_YMDFROM DOCTORWHERE..
응집도와 결합도에 대해서 설명해 주세요.
·
백엔드 면접
응집도(Cohension)는 모듈에 포함된 내부 요소들이 연관되어 있는 정도를 나타냅니다. 결합도(Coupling)는 의존성의 정도를 나타내며, 다른 모듈에 대해 얼마나 많은 지식을 갖고 있는지를 포함합니다. 응집도와 결합도는 변경과 관련이 깊습니다. 일반적으로 좋은 설계란 높은 응집도와 낮은 결합도를 가진 모듈로 구성된 설계를 의미하는데요, 변경이 발생하는 경우 특정 모듈만 수정되면 응집도가 높다고 판단할 수 있습니다. 반면, 특정 모듈을 변경하는 경우에 다른 모듈도 변경해야 하는 상황에서는 결합도가 높다고 판단할 수 있습니다. 캡슐화의 정도가 응집도와 결합도에 영향을 미치게 됩니다. 캡슐화를 준수하면, 모듈 안의 응집도는 높아지고 모듈 사이의 결합도는 낮아집니다. 따라서 응집도와 결합도를 고려하기 전..
관계형 DB와 비 관계형 DB의 차이점은 무엇인가요?
·
백엔드 면접
관계형 데이터베이스는 고정된 로우와 컬럼으로 구성된 테이블에 데이터를 저장합니다. 그리고 SQL을 사용하여 여러 테이블에 존재하는 데이터와 관계에 따라서 조인하여 합칠 수도 있습니다. 관계형 데이터베이스는 데이터를 중복 없이 한 번만 저장하고, 데이터 무결성을 보장합니다. 또한 일반적으로 스케일 업을 사용하여 확장합니다.하지만 관계형 데이터베이스는 스키마를 유연하게 바꾸기 어렵다는 한계가 있습니다. 그리고 관계가 존재하기 때문에 비즈니스 요구사항이 복잡해짐에 따라 쿼리도 복잡해지게 됩니다. 반면 NoSQL이라고도 불리는 비 관계형 데이터베이스는 정해진 스키마가 존재하지 않아 자유롭게 데이터를 저장하고 조회할 수 있습니다. document, graph, key-value 등 다양한 유형이 존재합니다. 비 ..
HTTP/1.1과 HTTP/2.0에 대해서 설명해 주세요.
·
백엔드 면접
HTTP/1.0의 경우 매 요청과 응답마다 TCP 커넥션을 생성해서 사용했기 때문에 오버헤드가 발생했습니다. HTTP/1.1은 이러한 문제를 지속 커넥션이라는 지정한 타임아웃만큼 커넥션을 종료하지 않는 방식으로 해결합니다. 또한 특정 요청에 대한 응답이 수신되기 전에 다음 요청을 보낼 수 있는 파이프라이닝 기능으로 요청의 응답 지연을 감소합니다.HTTP/1.1은 1.0 버전에 비해 많이 개선되었지만, Head Of Line Blocking 문제가 존재했습니다. 만약 3개의 요청을 파이프라인을 통해 전송했을 때, 서버는 모든 요청을 순서에 맞춰서 응답해야 합니다. 이때 첫 번째 요청에 대한 응답이 너무 오래 걸리면 나머지 요청은 첫 번째 요청의 처리를 기다려야 합니다. 또한 1.1 버전은 매 요청마다 동일..