본문 바로가기
DBMS

사용자 정의 함수

by asd135 2024. 4. 30.
728x90

사용자 정의함수(User-Defined Function)

MYSQL에서도 프로그래밍 언어와 마찬가지로 사용자 정의함수를 만들 수 있다.

 

사용자 정의함수 특징

  • 코드 재사용성 증가
  • 가독성 증가
  • 무결성 보장
  • 데이터 캡슐화

등등 여러 가지 장점들이 있다.

 

 

기본 문법

CREATE FUNCTION function_name(parameter1 data_type, parameter2 data_type)
RETURNS data_type
BEGIN
DECLARE var data_type
    -- 구현
    RETURN result;
END;

 

문법에서 약간? 특이한 점이 있다면 mysql의 사용자 정의 함수는 무조건 return을 해야 한다. 

return을 안 하고 싶다면 프로시저를 사용하면 된다.

 

CREATE FUNCTION `new_function` ()
RETURNS VARCHAR(100)
BEGIN
    DECLARE last_name VARCHAR(100);
    SELECT name INTO last_name FROM day_6.customer ORDER BY name DESC LIMIT 1;
    RETURN last_name;
END

 

위 코드는 고객테이블의 이름을 정렬하고 고객 한 명의 이름을 반환하는 함수이다.

 

 

사용자 정의 함수의 호출은 내장 함수와 호출방법이 똑같다.

'DBMS' 카테고리의 다른 글

커서  (0) 2024.06.06
뷰(View)  (0) 2024.06.05
트랜잭션(transaction)  (0) 2024.04.23
Primary Key, Foreign Key, Unique Key, Index Key 등  (0) 2024.04.17
간단한 sql 구문(INSERT, SELECT, UPDATE, DELETE)  (0) 2024.04.16