mysql自定义函数错在哪

mysql自定义函数错在哪,第1张

1 DETERMINISTIC 不确定的

2 NO SQL 没有SQl语句,当然也不会修改数据

3 READS SQL DATA 只是读取数据,当然也不会修改数据

4 MODIFIES SQL DATA 要修改数据

5 CONTAINS SQL 包含了SQL语句

其中在function里面,只有 DETERMINISTIC, NO SQL 和 READS SQL DATA 被支持。如果我们开启了 bin-log, 我们就必须为我们的function指定一个参数。

-- 有的,可以子查询 来完成 分组取前N条数据

select  from table_name a where 

4>(select count() from table_name where gid=agid and col2>acol2) 

order by agid,acol2 desc;

之前遇到过这个问题,没有找到合适的解决办法,后来仿照URL传参数时的处理方法,先编码后解码

具体如下

CREATE FUNCTION `test`(`id` VARCHAR(16)) RETURNS VARCHAR(2048) CHARACTER SET utf8

BEGIN

RETURN AES_ENCRYPT(_utf8'china 中国','1');

END

执行查询

select AES_DECRYPT(test('1'),'')

以上就是关于mysql自定义函数错在哪全部的内容,包括:mysql自定义函数错在哪、mysql 怎么自定义类似max这样的函数、mysql数据库自定义函数结果乱码问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9730871.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-01
下一篇 2023-05-01

发表评论

登录后才能评论

评论列表(0条)

保存