[8주차] MySQL CURSOR

이맑음·2024년 1월 24일

Java 수업 필기

목록 보기
10/15
delimiter //
 create procedure interest()
 begin
 # 변수 선언
 declare myInterest integer default 0.0;
 declare price integer;
 declare endOfRow boolean default false;
 # 커서 생성
 declare interestC cursor for select saleprice from orders;
 declare continue handler for not found set endOfRow = true; # 더 이상 가져올 row가 없다면 endOfRow를 true로 변경
 # 커서 오픈 
 open interestC;
 # 커서 looping 하면서 fetch
 cursor_loop : loop
	fetch interestC into price;
	if endOfRow then leave cursor_loop;
    end if;
    if price >= 30000 then set myInterest = myInterest + price * 0.1;
    else set myInterest = myInterest + price * 0.05;
    end if;
 end loop cursor_loop; # loop 종료
 close interestC; # 커서 종료 
 select concat('전체 이익 금액 = ', myInterest);
 end;
// delimiter ;

0개의 댓글