mysql 如何把unicode编码的字段转成中文

迎风撒尿 2017-06-22 05:01:43
数据库中存的类型为
/home/\u62a5\u8868/\u7f16\u8f91\u90e8/\u7f16\u8f91\u5de5\u4f5c\u91cf\u8003\u6838.prpt
想在查出来的时候 转成中文,有什么函数可以实现么
...全文
3316 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
带我飞的云 2020-12-29
  • 打赏
  • 举报
回复

DROP FUNCTION IF EXISTS unicode_decode;
DELIMITER $$
CREATE FUNCTION unicode_decode(content TEXT)
RETURNS TEXT
BEGIN
DECLARE code1,code2 VARCHAR(20);
DECLARE n_index,s_index SMALLINT UNSIGNED DEFAULT 0;
DECLARE result,tmp_txt TEXT;
DECLARE temp VARCHAR(1);
SET s_index=LOCATE("\\u", content,1);
SET result = "";
WHILE s_index>0 DO
SET code1 = CONV(SUBSTRING(content,s_index+2,2),16,10);
SET code2 = CONV(SUBSTRING(content,s_index+4,2),16,10);
SET temp = CONVERT(CHAR(code1,code2) USING 'ucs2');
SET tmp_txt = SUBSTRING(content,n_index+1,s_index - (n_index+1));
SET result = CONCAT(result,tmp_txt,temp);
SET n_index = s_index+5;
SET s_index = LOCATE("\\u", content, s_index+1);
END WHILE ;
SET tmp_txt = SUBSTRING(content,n_index+1);
SET result = CONCAT(result,tmp_txt);
RETURN result;
END $$

见链接: https://blog.csdn.net/dfy11011/article/details/111883893
AHUA1001 2020-12-29
  • 打赏
  • 举报
回复
综上,您的那个串,转换成中文,应该是:
/home/报表/编辑部/编辑工作量考核.prpt
AHUA1001 2020-12-29
  • 打赏
  • 举报
回复
首先,你的这个串
/home/\u62a5\u8868/\u7f16\u8f91\u90e8/\u7f16\u8f91\u5de5\u4f5c\u91cf\u8003\u6838.prpt
掐头去尾,剩下
\u62a5\u8868/\u7f16\u8f91\u90e8/\u7f16\u8f91\u5de5\u4f5c\u91cf\u8003\u6838
然后替换掉\u,剩下
62a58868/7f168f9190e8/7f168f915de54f5c91cf80036838
然后把所有的/,都去掉,剩下
62a588687f168f9190e87f168f915de54f5c91cf80036838
把剩下的内容,放到以下代码里
SELECT CONVERT(UNHEX('62a588687f168f9190e87f168f915de54f5c91cf80036838') USING ucs2) S FROM DUAL
执行后,显示内容如下:
报表编辑部编辑工作量考核
weixin_45449452 2020-12-28
  • 打赏
  • 举报
回复
unhex(字段) 不好使啊
zjcxc 2017-06-23
  • 打赏
  • 举报
回复
不知道有没有现成的,可以自己写一个
迎风撒尿 2017-06-22
  • 打赏
  • 举报
回复
引用 1 楼 rucypli 的回复:
select unhex('8f91')
这样做 unhex(OBJ_ID) 这列的话 返回是null呢
rucypli 2017-06-22
  • 打赏
  • 举报
回复
select unhex('8f91')

56,679

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧