반응형
1. 함수란
함수의 기본적인 개념은
사람이 숨 쉬는 것에 대해 갈비뼈와 횡격막의 상하 운동에 의해 흉강의 부피가 증가하면서 폐의 부피가 증가함으로 인해 폐 속의 공기압이 대기압보다 낮아지게 되어 공기가 들어오게 된다는 것을 생각하고 숨 쉬지 않는 것처럼
나는 숨을 쉰다고 생각하면 몸이 알아서 움직여주는 것과 같이 함수도 함수를 사용하는 것으로 그 속의 수많은 문장들을 불러오는 것입니다.
부르면 특정 동작을 해주거나 결과값을 주는 것입니다.
보편적인 프로그래밍 언어면은 대부분 존재하는데 MySQL도 함수를 선언할 수 있습니다.
2. 사용법
기본적인 형태는 아래와 같습니다.
CREATE FUNCTION 함수명(매개변수 자료형) RETURNS 반환_자료형
BEGIN
SQL 쿼리문 1;
SQL 쿼리문 2;
RETURN 반환값
END;
제곱을 처리하는 함수를 선언해봅시다.
DELIMITER //
CREATE FUNCTION square(a INT) RETURNS DOUBLE
BEGIN
RETURN a * a;
END
//
DELIMITER ;
함수에서도 BEGIN, END 사이에 구분 문자인 ';' 때문에 오류가 발생하지 않도록 DELIMITER 명령어를 통해 기존 구분 문자인 ';'을 '//'으로 바꾸는 작업을 해줍니다.
함수는 아래와 같이 SELECT 명령어를 통해 사용할 수 있습니다, (매개변수는 함수에서 사용하라고 보내주는 값)
SELECT 함수명(매개변수);
함수에서 변수 선언은 아래 명령어를 통해 할 수 있습니다, 값 대입은 INTO 명령어를 사용합니다.
* 타 프로그래밍 언어와 다르게 MySQL은 TABLE 선언하듯 데이터 타입이 뒤에 나옵니다
DECLARE 변수명 자료형;
아래와 같이 사용할 수 있습니다.
3. 그 외 문법
함수 확인
SHOW CREATE FUNCTION 함수명;
함수 삭제
DROP FUNCTION 함수명;
반응형
'MySQL' 카테고리의 다른 글
[MySQL] 실행 계획(Query Plan)이 뭔데 (0) | 2023.12.02 |
---|---|
[MySQL] 뷰(View) 사용법 (0) | 2020.12.30 |
[MySQL] 트랜잭션(Transaction) 사용법 (0) | 2020.12.29 |
[MySQL] 트리거(Trigger) 사용법 (0) | 2020.12.29 |
[MySQL] 프로시저(Procedure) 사용법 (0) | 2020.12.22 |