对IP进行排序
select ip from t_ip
ORDER BY
CONVERT(SUBSTRING_INDEX(ip, '.', 1), SIGNED),
CONVERT(SUBSTRING_INDEX(SUBSTRING_INDEX(ip, '.', 2), '.', -1), SIGNED),
CONVERT(SUBSTRING_INDEX(SUBSTRING_INDEX(ip, '.', 3), '.', -1), SIGNED),
CONVERT(SUBSTRING_INDEX(ip, '.', -1), SIGNED);
对汉字进行排序 ----不知为何有中英文的 两种都不对·· ps mysql的sub起始位置为0
CONVERT(列名 USING gbk)
CONVERT(SUBSTR(列名,1,1) USING gbk)
函数介绍
1) CONVERT(expr,type): 此函数的作用是将表达式转换为特定类型
如:上面用到的 CONVERT(SUBSTRING_INDEX(ip, ‘.’, 1), SIGNED) 是将ip字段中获取的第一位,转换为整数。
2)SUBSTRING_INDEX(str,delim,count):此函数的作用是将一个字段串,按照某个标识字符串截取,并获取第几个之前
如:SUBSTRING_INDEX(ip, ‘.’, 1) 是将IP按照 ‘.’ 分隔,获取第一位。如果是ip是 192.168.10.8,获取的就是 192
SUBSTRING_INDEX(ip, '.', -1) 是将IP按照 '.' 分隔,获取最后一位。如果是ip是 192.168.10.8,获取的就是 8