首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL使用name.co.uk或name-omething.co.uk命令

MySQL使用name.co.uk或name-omething.co.uk命令
EN

Stack Overflow用户
提问于 2015-04-16 17:39:44
回答 2查看 32关注 0票数 1

嗨,我的代码在我使用的地方

代码语言:javascript
复制
ORDER BY domain_name ASC

得到像这样的结果

代码语言:javascript
复制
name-somethinga.co.uk
name-somethingb.co.uk
name.co.uk
papa-alpha.co.uk
papa.co.uk

我想知道的是是否有可能得到这样的结果

代码语言:javascript
复制
name.co.uk
name-somethinga.co.uk
name-somethingb.co.uk
papa.co.uk
papa-alpha.co.uk
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-04-16 17:49:06

你的问题是,在α排序中,破折号先于点。

您希望只按点左边的字符进行排序。

所以:

代码语言:javascript
复制
ORDER BY left(domain_name, locate('.', domain_name)-1 ) 

以下是it的SQLFiddle:http://sqlfiddle.com/#!9/aa4bc/1

此版本显示了您正在排序的内容:

代码语言:javascript
复制
select *, left(domain_name, locate('.', domain_name)-1 ) as sortname
from sites
ORDER BY left(domain_name, locate('.', domain_name)-1 ) ASC;

给予:

代码语言:javascript
复制
id  domain_name             sortname
3   name.co.uk              name
1   name-somethinga.co.uk   name-somethinga
2   name-somethingb.co.uk   name-somethingb
4   papa.co.uk              papa
5   papa-alpha.co.uk        papa-alpha
票数 0
EN

Stack Overflow用户

发布于 2015-04-16 17:42:49

我想你要找的是DESC,所以你的声明是:

由“任何”DESC命令

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29682171

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档