. 프로시저 생성
DELIMITER $$
DROP PROCEDURE IF EXISTS HellloWorld$$
CREATE PROCEDURE HelloWorld()
BEGIN
SELECT 'Hello World';
END$$
DELIMITER ;
2. 프로시저 호출
CALL HelloWorld( )
3. 응용
3-1 변수
BEGIN
DECLARE my_integer INT;
DECLARE my_dob DATE DEFAULT '1960-06-21'
SET my_integer=20;
END;
3-2 파라미터
DELIMITER $$
CREATE PROCEDURE my_sqrt(input_number INT, OUT out_number FLOAT)
BEGIN
SET out_number=SQRT(input_number);
END$$
DELIMITER ;
// IN : 읽기전용 프로시저안에서 값 변경 불가능, OUT : 프로시저 내부에서 일을 처리한디 값을 돌려줌, INOUT : 프로시저로부터 값을 전달받아 이를 고치고 다시 돌려줌
3-3 조건절 (IF/CASE)
IF(price>500) THEN
SET discount=10
ELSEIF (price>100) THEN
SET discount=5
ELSE
SET discount=3
END IF
3-4 반복문 (WHILE/END WHILE, REPEAT/UNTIL절 가능)
my_simple_loop : LOOP
SET counter = counter+1;
END LOOP my_simple_loop;
3.5 변수값을 SELECT 로 넣을 경우, select into
DECLARE total NUMERIC(8,2);
SELECT SUM(sale) INTO total
FROM sales