我在 MySQL 数据库中有一个域和子域列表,如下所示:
abc.com
contactus.def.com
pages.abc.com
help.about.abc.com
def.com
我希望 SELECT 查询根据域名对这些域和子域进行排序,最终输出如下:
abc.com
pages.abc.com
help.about.abc.com
def.com
contactus.def.com
我怎样才能做到这一点?请帮助我。
最佳答案
您需要使用带有分隔符“.”的 substring_index 从“结束到开始”和“从开始到结束”执行排序。并计数 occurenses=2 http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_substring-index例如:
SELECT * FROM `table` order by SUBSTRING_INDEX(`fieldname`, '.', -2),SUBSTRING_INDEX(`fieldname`, '.', 2);
SQL fiddle :http://sqlfiddle.com/#!2/ac8c61/1
关于mysql - 在 MySQL 中对域进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28279070/