본문 바로가기

분류 전체보기

(96)
쿼리 실행 로그 찍기 의존성 추가 implementation "org.bgee.log4jdbc-log4j2:log4jdbc-log4j2-jdbc4:1.16" 프로퍼티 파일 추가 log4jdbc.log4j2.properties log4jdbc.spylogdelegator.name=net.sf.log4jdbc.log.slf4j.Slf4jSpyLogDelegator log4jdbc.dump.sql.maxlinelength=0 application.properties 설정 logging.level.jdbc.sqlonly=info logging.level.jdbc.sqltiming=info logging.level.jdbc.resultsettable=info logging.level.jdbc.audit=off logging.level..
Optional이란? Optional 이란? Optional 클래스는 Integer나 Double 클래스처럼 'T'타입의 객체를 포장해 주는 래퍼 클래스(Wrapper class)이다. Optional 인스턴스는 모든 타입의 참조 변수를 저장할 수 있다. 이러한 Optional 객체를 사용하면 예상치 못한 NullPointerException 예외를 제공되는 메소드로 간단히 회피할 수 있다. 즉, 복잡한 조건문 없이도 널(null) 값으로 인해 발생하는 예외를 처리할 수 있게 된다. Optional 사용 예시 public UserVO login(String id, String password) throws Exception { Optional findUserOptional = userMapper.findByLoginId(id..
[SQL 문제풀이] 상품을 구매한 회원 비율 구하기-프로그래머스 문제링크 USER_INFO 테이블과 ONLINE_SALE 테이블에서 2021년에 가입한 전체 회원들 중 상품을 구매한 회원수와 상품을 구매한 회원의 비율(=2021년에 가입한 회원 중 상품을 구매한 회원수 / 2021년에 가입한 전체 회원 수)을 년, 월 별로 출력하는 SQL문을 작성해주세요. 상품을 구매한 회원의 비율은 소수점 두번째자리에서 반올림하고, 전체 결과는 년을 기준으로 오름차순 정렬해주시고 년이 같다면 월을 기준으로 오름차순 정렬해주세요. https://school.programmers.co.kr/learn/courses/30/lessons/131534#qna 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 ..
spring boot mybatis 카멜케이스 변환 방법 스프링 부트에 마이바티스를 연결해서 간단하게 SELECT 쿼리문을 조회했는데 자꾸 NULL 값이 나와서 해매고있었다. 분명 정확하게 했다고 했는데 자꾸 결과값은 NULL이 나왔다. 구글링 검색 결과 카멜형식 변환이 문제라는 것을 알게됐다. 보통 테이블의 컬럼은 언더바 형식으로 되어있고, 개발을 할 때는 카멜형식으로 만든다. 해결방법은 아래와 같이 선언해주면 된다. application.properties mybatis.configuration.map-underscore-to-camel-case=true mybatis-config.xml
[SQL 문제풀이] 식품분류별 가장 비싼 식품의 정보 조회하기-프로그래머스 문제링크 MEMBER_PROFILE와 REST_REVIEW 테이블에서 리뷰를 가장 많이 작성한 회원의 리뷰들을 조회하는 SQL문을 작성해주세요. 회원 이름, 리뷰 텍스트, 리뷰 작성일이 출력되도록 작성해주시고, 결과는 리뷰 작성일을 기준으로 오름차순, 리뷰 작성일이 같다면 리뷰 텍스트를 기준으로 오름차순 정렬해주세요. https://school.programmers.co.kr/learn/courses/30/lessons/131124#qna 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 1. 먼저 리뷰를 가장 많이 작성한 회원을 구하는 쿼리를 작성하였..
오라클 FETCH 프로그래머스 SQL 문제를 푸는 과정에서 ROWNUM을 사용해서 푸는데 FETCH 를 사용해서 푸는 답안이있어 FETCH에 검색해봤다. 내가작성한 쿼리 SELECT NAME, DATETIME FROM ( SELECT A.NAME, A.DATETIME FROM ANIMAL_INS A, ANIMAL_OUTS B WHERE A.ANIMAL_ID = B.ANIMAL_ID(+) AND B.ANIMAL_ID IS NULL ORDER BY A.DATETIME ASC ) WHERE ROWNUM < 4 ; ROWNUM을 사용하다보니 SELECT문을 한번더 감싸서 ROWNUM으로 1,2,3등을 추출하였다. 하지만 FETCH 를 사용하니 한번 더 SELECT문을 쓰지않고 바로 1,2,3등을 추출할수 있게 됐다. SELECT..
[SQL 문제풀이] 년, 월, 성별 별 상품 구매 회원 수 구하기-프로그래머스 문제링크 USER_INFO 테이블과 ONLINE_SALE 테이블에서 년, 월, 성별 별로 상품을 구매한 회원수를 집계하는 SQL문을 작성해주세요. 결과는 년, 월, 성별을 기준으로 오름차순 정렬해주세요. 이때, 성별 정보가 없는 경우 결과에서 제외해주세요. https://school.programmers.co.kr/learn/courses/30/lessons/131532#qna 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 1. 회원 수를 집계 해야 하기 때문에 해당 년도 월에 한 USER가 여러개를 구매한 중복을 제거 하기 위해 년, 월, 사용자 ..
[SQL 문제풀이] 식품분류별 가장 비싼 식품의 정보 조회하기-프로그래머스 문제링크 FOOD_PRODUCT 테이블에서 식품분류별로 가격이 제일 비싼 식품의 분류, 가격, 이름을 조회하는 SQL문을 작성해주세요. 이때 식품분류가 '과자', '국', '김치', '식용유'인 경우만 출력시켜 주시고 결과는 식품 가격을 기준으로 내림차순 정렬해주세요. https://school.programmers.co.kr/learn/courses/30/lessons/131116 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 1. 가장먼저 식품분류 기준으로 조건문을 작성하였다. 2. group by 를 category 기준으로 하여 각 식품분류 ..