mysql中没有字符串的分割函数,而最近在工作中,想用到这个功能,所以就在网上找了下,终于在csdn发现一个好方法。原帖的地址:

这里摘抄两个函数:

DELIMITER $$

CREATE DEFINER=`root`@`%` FUNCTION `func_get_split_string_total`(

f_string varchar(1000),f_delimiter varchar(5)

) RETURNS int(11)

BEGIN

return 1+(length(f_string) - length(replace(f_string,f_delimiter,'')));

END$$

DELIMITER ;

DELIMITER $$

CREATE DEFINER=`root`@`%` FUNCTION `func_get_split_string`(

f_string varchar(1000),f_delimiter varchar(5),f_order int) RETURNS varchar(255) CHARSET utf8

BEGIN

declare result varchar(255) default '';

set result = reverse(substring_index(reverse(substring_index(f_string,f_delimiter,f_order)),f_delimiter,1));

return result;

END$$

DELIMITER ;

真是很好用,我用的第二个方法。在mysql中执行函数的方法是:

select function_name(parameter)

不过在创建函数时,遇到了问题。显示错误:

ERROR 1418 (HY000): This function has none of DETERMINISTIC, NO SQL,

or READS SQL DATA in its declaration and binary logging is enabled

(you *might* want to use the less safe log_bin_trust_function_creators

variable

真是不方便啊,还需要解决这个问题,解决方法也很简单

1. mysql> SET GLOBAL log_bin_trust_function_creators = 1;

2. 系统启动时,加上--log-bin-trust-function-creators 参数为1

3. 直接在my.ini的[mysqld]区段加上log-bin-trust-function-creators=1

我使用第一种方法后,就可以顺利的创建函数了,于是字符串分割函数,顺利的使用了。

mysql中的split函数_mysql中的split函数相关推荐

  1. mysql的concat函数_MySQL中concat函数(连接字符串)

    MySQL中concat函数 使用方法: CONCAT(str1,str2,-) 返回结果为连接参数产生的字符串.如有任何一个参数为NULL ,则返回值为 NULL. 注意: 如果所有参数均为非二进制 ...

  2. mysql中怎么在列中使用时间函数_mysql中关于时间的函数使用教程

    UNIX_TIMESTAMP() UNIX_TIMESTAMP(date) 如果没有参数调用,返回一个Unix时间戳记(从1970-01-01 00:00:00GMT开始的秒数).如果UNIX_TIM ...

  3. mysql空值判断函数_MySQL中的ifnull()函数判断空值

    我们知道,在不同的数据库引擎中,内置函数的实现.命名都是存在差异的,如果经常切换使用这几个数据库引擎的话,很容易会将这些函数弄混淆. 比如说判断空值的函数,在Oracle中是NVL()函数.NVL2( ...

  4. mysql中字符串拼接函数_MySQL 字符串连接CONCAT()函数

    MySQL字符串连接函数 使用方法: CONCAT(str1,str2,-) 返回结果为连接参数产生的字符串.如有任何一个参数为NULL ,则返回值为 NULL. 注意: 如果所有参数均为非二进制字符 ...

  5. MySQL中count是什么函数_MySQL中

    本篇文章给大家带来的内容是关于mysql大表中count()的用法以及mysql中count()的优化,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助.一个单表中包含有6000w+的数据 ...

  6. mysql diff函数_MYSQL中 的datediff、timestampdiff函数

    对mysql中日期范围搜索的大致有三种方式: 1.between and语句: 2.datediff函数: 3.timestampdiff函数: 下面就具体说明下这三种方式: 第一种: between ...

  7. mysql 截取括号内字符串_Mysql中字符串截取函数

    MySQL中字符串的截取 substring_index(str,delim,count) 函数的使用较为普遍 函数括号里面的依次为:要分隔截取的字符串(如:"aaa_bbb_ccc&quo ...

  8. mysql的datepart函数_MySQL中的 DATE_FORMAT 与 SQL 中的 DATEPART()函数使用介绍

    本小白最近学习MySQL,因为之前是已经有学过微软大佬的SQL Server所以自认为理解的还是稍快的(滑鸡),好了说正事. 今天在写一个查询语句时,需要用到 一个日期函数:DATEPART( ) 因 ...

  9. mysql去除select换行符_MySQL中去除字段中的回车符和换行符

    问题: 在使用[ load data infile 'D:/node.txt' into table node fields terminated by '\t'; ]语句批量导入如下图所示的aaa. ...

  10. mysql的explain怎么看_mysql中explain用法详解

    如果在select语句前放上关键词explain,mysql将解释它如何处理select,提供有关表如何联接和联接的次序. explain的每个输出行提供一个表的相关信息,并且每个行包括下面的列: 1 ...

最新文章

  1. Unet神经网络为什么会在医学图像分割表现好?
  2. 小程序 sha1和服务器有关系吗,微信小程序使用sha1实现密码加密的方法介绍
  3. 【问链财经-区块链基础知识系列】 第十八课 区块链应用于贷款结算
  4. 分享一下spark streaming与flume集成的scala代码。
  5. 跨网段远程调试vs_如何提高后台服务应用问题的排查效率?日志 VS 远程调试
  6. 小程序下一破局点?钉钉小程序卡片,应用与平台的深度集成
  7. OJ(Online Judge)系统汇总
  8. 机器学习笔记——支持向量机
  9. mysql怎么从1开始递增
  10. pcie inbound、outbound及EP、RC间的互相訪问
  11. java如何打JAR包
  12. ICT的圣杯(一):人形电脑天使心
  13. Winxp不幸中毒以及手杀过程
  14. 小工程结算书范本_建筑工程结算书范本
  15. 《JAVA: 学习导图》
  16. booting from hard disk
  17. BCB6.0 Import Type Library Excel2003时报错:因为我安装了Excel2007兼容包 的缘故
  18. linux 设备文件动态,使用 udev 高效、动态地管理 Linux 设备文件
  19. matlab激光加工,科协五分钟|用Matlab实现激光扫描测距绘制面型
  20. 苹果系统安装python环境_mac下python相关环境搭建(python开发必经之路之mac快速上手)...

热门文章

  1. 图文讲解MAC和windows如何SSH连接服务器!
  2. 诺基亚安卓手机值得重新被关注:为青春,为情怀
  3. windows/prefetch文件夹能删吗?里面都是些什么文件,有什么作用??
  4. java contextmenu_安卓开发_浅谈ContextMenu(上下文菜单)
  5. Android Studio1.5使用和学习记录
  6. 【干货】PCB材料选择与性能比较
  7. 使用MySQL过程中忘掉实例名怎么办
  8. linux设置oracle的sid,Oracle修改实例名SID
  9. Failed to reboot system via logind: Interactive authentication required
  10. OPPO创新大会:详解10倍光学变焦技术 展示首款5G手机