MYSQL的字符串函数基本都是多字节安全的……差不多就是多字节当作单字节数……所以substring也不能正常的数字节先从数据库一表中取出,一个字符串,比如说:
'欧阳震华 18 香港电视剧演员’
截取出来放到下面这张表CREATE TABLE `tb_a` (
`name` CHAR(10) DEFAULT NULL,
`age` CHAR(3) DEFAULT NULL,
`job` CHAR(50) DEFAULT NULL
) ENGINE=INNODB DEFAULT CHARSET=gbk
'欧阳震华 18 香港电视剧演员’
截取出来放到下面这张表CREATE TABLE `tb_a` (
`name` CHAR(10) DEFAULT NULL,
`age` CHAR(3) DEFAULT NULL,
`job` CHAR(50) DEFAULT NULL
) ENGINE=INNODB DEFAULT CHARSET=gbk
unhex(hex('中文字符abc'))等出了问题再来问...哈哈
SELECT SUBSTRING_INDEX('欧阳震华 18 香港电视剧演员',' ',1),
SUBSTRING_INDEX(SUBSTRING_INDEX('asdfa 45 yt',' ',2),' ',-1),
SUBSTRING_INDEX('欧阳震华 18 香港电视剧演员',' ',-1)
FROM tablename;
#****************************************#
MySQL技术及运维自动化网:www.mysqlops.com新浪微博账号:http://weibo.com/mysqlops
#****************************************#