전체 글

    [Java/자바] BigDecimal 정리

    https://www.acmicpc.net/problem/2720 2720번: 세탁소 사장 동혁 각 테스트케이스에 대해 필요한 쿼터의 개수, 다임의 개수, 니켈의 개수, 페니의 개수를 공백으로 구분하여 출력한다. www.acmicpc.net 위의 문제를 풀다가 BigDecimal을 처음 사용해봤는데 잘 정리해두면 유용하게 쓰일 것 같아서 포스팅합니다! BigDecimal? - 자바에서 숫자를 정밀하게 저장하고 표현할 수 있는 객체입니다. - 자바에서 소수는 정밀도의 한계로 인해 값이 유실되는 경우가 있는데, 그것을 방지할 수 있습니다. - 단점은 느린 속도 & 복잡한 사용 방법을 제외하면 없습니다. (그만큼 좋음!) BigDecimal 기본 상수 BigDecimal은 객체이기 때문에 초기화가 기본 타입보..

    [해커랭크/SQL] Top Competitors

    www.hackerrank.com/challenges/full-score/problem Top Competitors | HackerRank Query a list of top-scoring hackers. www.hackerrank.com 문제 요약 두 개 이상의 문제를 푼 해커들의 hacker_id와 name을 조회하는 문제입니다. 문제 수를 기준으로 내림차순 하고, 문제 수가 같은 경우 hacker_id를 기준으로 오름차순 정답 코드 테이블을 조인을 이용해서 알맞게 연결하면 어려운 문제는 아니라고 생각합니다. 처음엔 테이블 연결하는 걸로 많이 해맸네여........ select s.hacker_id, h.name from submissions s join challenges c on (s.challe..

    [해커랭크/SQL] New Companies

    www.hackerrank.com/challenges/the-company/problem New Companies | HackerRank Find total number of employees. www.hackerrank.com 문제 요약 회사코드, 설립자, 각 계급별 직원수를 회사코드를 기준으로 오름차순 하여 조회하는 문제 (단, 회사코드는 문자열임 -> ex) C1 -> C11 -> C2 ... 이런 식으로 정렬) 정답 코드 조인만 해서 정렬하면 되는 문제라서 정말 간단한 문제인데 문제를 잘못 이해해서 엄청 해맸네여 ㅋㅋ... C1 -> C2 -> C3처럼 숫자 기준으로 정렬하는 문제라고 생각해서 30분을 날렸습니다. 중복 값이 있을 수도 있기 때문에 distinct를 이용해서 중복 값을 없애준 co..

    [MySQL] 서브쿼리(SubQuery)란?

    1. 서브쿼리(SubQuery) - 하나의 SQL문 안에 포함되어 있는 또 다른 SQL문 - 메인 쿼리를 외부 쿼리(outer), 서브쿼리를 내부 쿼리(inner)라고 부름 - 서브쿼리는 메인쿼리와 종속적인 관계에 있는 쿼리이고, 메인쿼리가 부모쿼리 서브쿼리가 자식쿼리가 됨 → 그렇기 때문에 메인쿼리에서는 서브쿼리의 컬럼을 사용할 수 없지만, 서브쿼리에서는 메인쿼리의 컬럼을 사용할 수 있음 (자바의 상속과 같음) - 서브쿼리가 포함된 쿼리문의 실행 순서는 서브쿼리 -> 메인쿼리임 2. 서브쿼리의 특징 - 서브쿼리는 반드시 괄호() 안에 작성되어야 함 - select문으로만 작성이 가능함 - 괄호가 끝나고 새미콜론(;)을 쓰지 않음 - 특수한 경우를 제외하고 ORDER BY 사용 불가 - 별칭(Alias)..

    [MySQL/해커랭크] Weather Observation Station 20

    www.hackerrank.com/challenges/weather-observation-station-20/problem Weather Observation Station 20 | HackerRank Query the median of Northern Latitudes in STATION and round to 4 decimal places. www.hackerrank.com 이 문제는 위도의 중간값을 구하는 문제입니다. Oracle에서는 median이라는 함수를 사용해서 쉽게 구할 수 있지만 MySQL에서는 지원을 하지 않기 때문에 직접 구해야 합니다..ㅠ 중간값이란 데이터를 정렬했을 때 가운데 순번에 있는 숫자를 말합니다. (이때, 정렬 기준은 오름차순이던 내림차순이던 상관없습니다) set @row..