我可以编写一个我可以在进行mySQL查询时调用的自定义函数,例如.
我的数据库表有字段’filetype’和’filename’.我想在返回结果之前对文件名执行一个函数.
$query = "SELECT filetype,MY_FUNCTION(filename) FROM table..";
$result = MysqL_query($query);
return $result
SO $结果现在具有由MY_FUNCTION创建的新值.原始数据库数据将保持不变.
好的 – 所以它看起来像是用户定义函数…如何编写自己的用户定义函数?我可以用PHP写吗?我在哪里保存函数或将其包含在我的全局文件中?
谢谢!
最佳答案
DELIMITER $$
CREATE FUNCTION MY_FUNCTION (FILENAME VARCHAR(255)) RETURNS VARCHAR(255)
DETERMINISTIC
NO sql
BEGIN
RETURN SUBSTR(filename,1,20);
END
$$
DELIMITER ;
要创建该函数,只需将其代码(上面提供的代码)粘贴到您喜欢的查询工具中,如MysqL.exe,MysqL Query Browser,PHPMysqLadmin等.
您可以在C和sql中编写UDF.在后一种情况下,您不需要编译器.