Computer >> 컴퓨터 >  >> 프로그램 작성 >> MySQL

MySQL 쿼리에 사용할 나만의 MySQL 함수를 작성할 수 있습니까?

<시간/>

예, MySQL 쿼리에 사용할 자체 MySQL 함수를 작성할 수 있습니다. 다음은 구문입니다:

DELIMITER //
CREATE FUNCTION yourFunctionName(optional parameters)) RETURNS yourDataType
DETERMINISTIC NO SQL
BEGIN
yourStatements1
.
.
.
.
N
END
//
DELIMITER ;

위의 CREATE FUNCTION을 사용하여 사용자 정의 함수를 생성했습니다.

MySQL 쿼리에서 사용할 사용자 정의 MySQL 함수를 생성해 보겠습니다.

mysql> DELIMITER //
mysql> CREATE FUNCTION get_First_Name(Name VARCHAR(255)) RETURNS
VARCHAR(255)
   DETERMINISTIC
   NO SQL
   BEGIN
      RETURN LEFT(Name,LOCATE(' ',Name) - 1);
   END
   //
Query OK, 0 rows affected (0.20 sec)
mysql> DELIMITER ;

이제 SELECT 문을 사용하여 위의 함수를 호출합니다.

mysql> select get_First_Name('David Miller');

그러면 다음과 같은 출력이 생성됩니다.

+--------------------------------+
| get_First_Name('David Miller') |
+--------------------------------+
| David                          |
+--------------------------------+
1 row in set, 2 warnings (0.00 sec)