mysql中字符串1.1/1.2/1.2.2/1.2.5排序问题!
mysql中字符串1.1/1.2/1.2.2/1.2.5排序问题!
1.创建查询函数:(split_pid为函数名称)
create function split_pid(str varchar (1000),delimiter varchar(1)) returns varchar(200)
begin
declare cur_str varchar(200);
declare sub_len int;
declare sub_str varchar(200);
declare ret_str varchar(200);
declare loop_count int;
set cur_str = str;
set sub_len = -1;
set ret_str = '';
set loop_count = 0;
repeat
set cur_str = substring(cur_str,sub_len + 2);
set sub_str = substring_index(cur_str,delimiter,1);
set sub_len = length(sub_str);
if sub_len !=0 then
set ret_str = concat(ret_str,lpad(sub_str,6,'0'));
end if;
set loop_count = loop_count + 1;
until sub_len = 0
end repeat;
return ret_str;
end;
2.函数创建成功,写SQL语句
jyxm :表名,tt为函数排序后的简称
SELECT jy.id as id ,jy.bz as bz, split(jy.bz,'.') as tt
FROM jyxm jy
WHERE jy.tid='FE74159EF93E9AD1DD56F5BE82253C1B'
ORDER BY tt ASC
3.运行结果如下
学习资料见知识星球。
以上就是今天要分享的技巧,你学会了吗?若有什么问题,欢迎在下方留言。
快来试试吧,小琥 my21ke007。获取 1000个免费 Excel模板福利!
更多技巧, www.excelbook.cn
欢迎 加入 零售创新 知识星球,知识星球主要以数据分析、报告分享、数据工具讨论为主;
1、价值上万元的专业的PPT报告模板。
2、专业案例分析和解读笔记。
3、实用的Excel、Word、PPT技巧。
4、VIP讨论群,共享资源。
5、优惠的会员商品。
6、一次付费只需99元,即可下载本站文章涉及的文件和软件。
共有 0 条评论