我可以编写自己的 MySQL 函数用于 MySQL 查询吗?
mysqlmysqli database
是的,您可以编写自己的 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)