열심히 강의를 듣는데 속도가 안 나는 와중에 오늘따라 왜 이렇게 에러가 많이 나는 건지... 그래도 DB 관련 내용이라 재밌다😂 DB 관련해서 더 공부를 자세하게 하고 싶은데 시간이 애매하다.. 안 그래도 오전에 자바 정리하면서 들으니까 계획 세운 것보다 시간이 더 많이 걸려서 당황스러웠는데. 내 계획..😅
문제 : 길이가 같은 두 1차원 정수 배열 a, b가 매개변수로 주어집니다. a와 b의 내적을 return 하도록 solution 함수를 완성해주세요.
이때, a와 b의 내적은 a[0]*b[0] + a[1]*b[1] + ... + a[n-1]*b[n-1]
입니다. (n은 a, b의 길이)
class Solution {
public int solution(int[] a, int[] b) {
int answer = 0;
for(int i = 0; i < a.length; i++) {
answer += a[i] * b[i];
}
return answer;
}
}
문제 : 2022년 1월의 카테고리 별 도서 판매량을 합산하고, 카테고리(CATEGORY), 총 판매량(TOTAL_SALES) 리스트를 출력하는 SQL문을 작성해주세요.
결과는 카테고리명을 기준으로 오름차순 정렬해주세요.
SELECT B.CATEGORY, COUNT(S.SALES) AS TOTAL_SALES
FROM BOOK B
JOIN BOOK_SALES S
ON B.BOOK_ID = S.BOOK_ID
WHERE S.SALES_DATE LIKE '2022-01%'
GROUP BY B.CATEGORY
ORDER BY B.CATEGORY
판매량을 합산해야 하기 때문에 COUNT가 아니라 SUM을 사용해야 함. (문제를^^ 제대로 읽어야지..)
SELECT B.CATEGORY, SUM(S.SALES) AS TOTAL_SALES
FROM BOOK B
JOIN BOOK_SALES S
ON B.BOOK_ID = S.BOOK_ID
WHERE S.SALES_DATE LIKE '2022-01%'
GROUP BY B.CATEGORY
ORDER BY B.CATEGORY
SUM :
테이블에 존재하는 컬럼의 합을 구하고 싶을 때 사용하는 함수
컬럼의 타입이 숫자형인 경우에만 사용 가능
SELECT SUM(컬럼) FROM 테이블;
COUNT :
테이블에 존재하는 데이터 갯수를 가져오고 싶을 때 사용하는 함수
전체 행의 갯수를 가져올 땐 NULL 값 포함
SELECT COUNT(*) FROM 테이블;
특정 컬럼의 갯수를 가져올 땐 NULL 값 제외
SELECT COUNT(컬럼) FROM 테이블;
AVG :
테이블에 존재하는 컬럼의 평균을 구하고 싶을 때 사용하는 함수
컬럼의 타입이 숫자형인 경우에만 사용 가능
SELECT AVG(컬럼) FROM 테이블;
NULL 값 제외 / 값이 NULL인 경우에도 포함하여 평균을 구하고 싶을 땐 SUM, COUNT 함수 혼합하여 사용해야
SELECT SUM(컬럼)/COUNT(*) FROM 테이블;
MAX / MIN
테이블에 존재하는 컬럼의 최댓값 또는 최솟값을 구하는 함수
컬럼 타입이 숫자형인 경우에만 사용 가능
SELECT MAX(컬럼) FROM 테이블;
// 컬럼의 최댓값 구하기
SELECT MIN(컬럼) FROM 테이블;
// 컬럼의 최솟값 구하기