728x90
MySQL은 SUM함수는 기본으로 제공되지만, column의 값을 모두 곱하는 기능 제공되지 않는다.
1. 여러 함수를 활용하여 구현하는 법
LOG -> SUM -> EXP 순으로 연산하면 곱셈을 구할 수 있다.
DROP TABLE IF exists SYS.MULTIPLE;
CREATE TABLE sys.MULTIPLE
(NUM INT not NULL
);
insert into sys.MULTIPLE (NUM)
values
(1),
(2),
(3),
(4),
(5);
select * from sys.MULTIPLE;
select exp(SUM(LOG(NUM)))
from SYS.MULTIPLE;
2. 변수 선언 : @
변수를 선언하고 초기값을 1로 설정
select @MUL := 1;
select NUM
, @MUL := @MUL * NUM as MULTIPLE
from SYS.MULTIPLE;
최종결과만 남기고 싶다면 MAX함수 사용
select @MUL := 1;
select MAX(@MUL := @MUL * NUM) as MULTIPLE
from SYS.MULTIPLE;
728x90
반응형
'TIL - 프로그래밍 > SQL' 카테고리의 다른 글
MySQL FOREIGN KEY 기본 (설정, 삭제) (0) | 2024.07.23 |
---|---|
MySQL 뷰(View) 기본 (생성, 대체, 수정, 삭제) (1) | 2024.07.23 |
MySQL 공백/문자 제거 - TRIM() (0) | 2024.07.02 |
조건에 맞는 값들을 묶어서 출력하기 - GROUP_CONCAT() (0) | 2024.07.02 |
[DBeaver] MySQL 연결 (오류 해결) (1) | 2024.07.02 |
댓글