전체 글 94

[프로그래머스 MySQL] 연도별 대장균 크기의 편차 구하기 - SUM, MAX, MIN

프로그래머스 SQL 고득점 Kit "연도별 대장균 크기의 편차 구하기" 문제 풀이입니다. 서브쿼리로 연도별 최댓값을 먼저 구하고 원본 테이블과 JOIN해서 편차를 계산하는 방법과, 다중 정렬(ORDER BY)까지 정리했습니다.문제 설명대장균 배양 정보를 담은 ECOLI_DATA 테이블에서, 분화된 연도별 대장균 크기의 편차를 구하는 문제입니다. 편차는 "해당 연도에 분화된 대장균 중 가장 큰 크기 - 각 대장균의 크기"로 정의됩니다.출력해야 하는 항목은 분화된 연도(YEAR), 연도별 편차(YEAR_DEV), 대장균 ID(ID)이고, 결과는 연도 오름차순으로 정렬하되 연도가 같으면 편차 오름차순으로 정렬해야 합니다.테이블 구조ECOLI_DATA: ID(개체 ID), PARENT_ID(부모 개체 ID, 최..

[프로그래머스 MySQL] 조건에 부합하는 중고거래 댓글 조회하기 - SELECT

프로그래머스 SQL 고득점 Kit "조건에 부합하는 중고거래 댓글 조회하기" 문제 풀이입니다. USED_GOODS_BOARD와 USED_GOODS_REPLY 테이블을 JOIN해서 특정 연월에 작성된 게시글의 댓글을 조회하고, 다중 정렬 기준(ORDER BY)까지 적용하는 방법을 정리했습니다.포스트 본문문제 설명중고거래 게시판 정보를 담은 USED_GOODS_BOARD 테이블과 댓글 정보를 담은 USED_GOODS_REPLY 테이블에서, 2022년 10월에 작성된 게시글에 달린 댓글 내역을 조회하는 문제입니다.출력해야 하는 항목은 게시글 제목(TITLE), 게시글 ID(BOARD_ID), 댓글 ID(REPLY_ID), 댓글 작성자 ID(WRITER_ID), 댓글 내용(CONTENTS), 댓글 작성일(CRE..

[프로그래머스 MySQL] 취소되지 않은 진료 예약 조회하기

프로그래머스 SQL 고득점 Kit "취소되지 않은 진료 예약 조회하기" 문제 풀이입니다. PATIENT, DOCTOR, APPOINTMENT 세 테이블을 JOIN해서 특정 날짜·특정 진료과의 취소되지 않은 예약만 조회하는 문제로, TIMESTAMP에서 날짜만 비교하는 방법과 정렬까지 정리했습니다.문제 설명환자 정보를 담은 PATIENT 테이블, 의사 정보를 담은 DOCTOR 테이블, 진료 예약목록을 담은 APPOINTMENT 테이블에서 2022년 4월 13일에 취소되지 않은 흉부외과(CS) 진료 예약 내역을 조회하는 문제입니다.출력해야 하는 항목은 진료예약번호(APNT_NO), 환자이름(PT_NAME), 환자번호(PT_NO), 진료과코드(MCDP_CD), 의사이름(DR_NAME), 진료예약일시(APNT_..

[프로그래머스 코딩 기초 트레이닝] 문자 개수 세기 - Java 풀이

프로그래머스 코딩 기초 트레이닝 "문자 개수 세기" 문제를 Java로 풀어봤습니다. 문자열에 등장하는 알파벳 A~Z, a~z 각각의 개수를 길이 52짜리 배열로 반환하는 문제로, char와 아스키코드를 이용한 인덱스 계산법을 정리했습니다.포스트 본문문제 설명알파벳 대소문자로만 이루어진 문자열 my_string이 주어질 때, my_string에서 'A'의 개수, 'B'의 개수, ..., 'Z'의 개수, 그리고 'a'의 개수, 'b'의 개수, ..., 'z'의 개수를 순서대로 담은 길이 52의 정수 배열을 반환하는 문제입니다.제한사항1 ≤ my_string의 길이 ≤ 1,000입출력 예my_string result"Programmers"[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ..

[Spring Boot] ZXing으로 QR 코드 생성 API 만들기

개발 환경항목버전Java17Spring Boot4.1.1Spring Framework7.0.9Gradle9.7.1QR 라이브러리ZXing 3.5.3이번 포스팅은 Spring Boot로 QR 코드를 생성해서 이미지로 응답해주는 간단한 API를 만들어본 기록입니다. 텍스트나 URL을 입력하면 QR 코드 이미지(PNG)를 생성해서 돌려주는 구조입니다.1. build.gradle 의존성dependencies { // QR 코드 라이브러리 implementation 'com.google.zxing:core:3.5.3' implementation 'com.google.zxing:javase:3.5.3'}QR 코드 생성을 위해 필요한 의존성은 zxing의 core, javase 두 개입니다.core:..

DEV/SpringBoot 2026.08.31

[프로그래머스 코딩테스트 입문] 등수 매기기 - Java 풀이

프로그래머스 코딩테스트 입문 "등수 매기기" 문제를 Java로 풀어봤습니다. 영어·수학 점수의 평균으로 학생들의 등수를 매기는 문제로, 이중 반복문을 이용한 직관적인 풀이로 정리했습니다. 문제 설명영어 점수와 수학 점수의 평균 점수를 기준으로 학생들의 등수를 매기는 문제입니다. 영어 점수와 수학 점수를 담은 2차원 정수 배열 score가 주어질 때, 평균 점수를 기준으로 매긴 등수를 배열로 반환하면 됩니다.제한사항0 ≤ score[0], score[1] ≤ 1001 ≤ score의 길이 ≤ 10score의 원소 길이는 2score는 중복된 원소를 갖지 않음입출력 예scoreresult[[80, 70], [90, 50], [40, 70], [50, 80]][1, 2, 4, 3][[80, 70], [70, ..

[기타] 티스토리 사이드바에 듀오링고 스트릭 위젯 추가하기

티스토리 사이드바에 듀오링고 스트릭 위젯 추가하기블로그 사이드바에 깃허브 잔디처럼 실시간으로 갱신되는 정보를 띄워두면 은근히 재미있습니다. 이번엔 듀오링고 스트릭을 티스토리 사이드바에 박아 넣어봤는데, 생각보다 간단해서 방법을 공유합니다.준비물: Duolingo Stats Card듀오링고는 공식적으로 웹 임베드용 위젯을 제공하지 않습니다 (앱 홈 화면 위젯만 지원). 대신 커뮤니티에서 만든 오픈소스 서비스인 Duolingo Stats Card를 사용하면 사용자명만으로 실시간 스트릭 카드를 SVG 이미지로 받아올 수 있습니다.기본 사용법은 이미지 태그 하나면 끝입니다. html테마도 15가지 중 골라서 붙일 수 있습니다 (light, dark, dracula, tokyonight, mint 등). html..

일상 2026.08.29

[git] GitHub push할 때 "not authorized" 에러 해결하기

GitHub push할 때 "not authorized" 에러 해결하기로컬에서 커밋까지 잘 끝내고 git push를 했는데 아래처럼 인증 에러가 나서 당황한 적이 있으실 겁니다. Can't connect to any repository: https://github.com/사용자명/저장소.git (not authorized)분명 예전에는 잘 되던 push인데 갑자기 인증이 안 되는 경우, 대부분은 GitHub가 더 이상 계정 비밀번호로는 git 작업을 허용하지 않기 때문입니다.원인GitHub는 2021년 8월부터 HTTPS 방식의 git 작업(clone, push, pull 등)에 계정 비밀번호 사용을 완전히 막았습니다. 대신 아래 둘 중 하나로 인증해야 합니다.Personal Access Token(PA..

Git 2026.08.29

[MySQL] 프로그래머스 레벨2_동명 동물 수 찾기

문제 동물 보호소에 들어온 동물 이름 중 두 번 이상 쓰인 이름과 해당 이름이 쓰인 횟수를 조회하는 SQL문을 작성해주세요. 이때 결과는 이름이 없는 동물은 집계에서 제외하며, 결과는 이름 순으로 조회 1. 2번 이상 쓰인 이름과 이름이 쓰인 횟수 조회 2. 이름이 없는 동물은 집계에서 제외 3. 결과는 이름 순으로 정렬 내 코드 SELECT NAME, COUNT(NAME) AS COUNT FROM ANIMAL_INS GROUP BY NAME HAVING COUNT(NAME) > 1 ORDER BY NAME; 1. Count함수로 name의 횟수를 조회 2. Group by절에 having으로 2회 이상 쓰인 name을 조회 3. Order by절로 name을 오름차순 정렬 결과 끝!