mysql怎么对汉字排序 mysql按字母顺序排序

mysql中怎么按姓氏笔画排序

按姓氏笔画排序无须特别设置,是按汉字姓氏字符的ASCII码值排序的。

成都创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站建设、网站制作、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的潮阳网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

按姓氏笔画排序,则需单独建立一个字段,自己输入姓氏的总笔画数来供排序用。

mysql 如何中文英文混合排序

排序目标是,英文就按首字母的 a,b,c 排,中文则按汉字的首字母排。

最简单的排序方法只需要一条 SQL 语句就可以完成:

01 mysql select tag, COUNT(tag) from news GROUP BY tag order byconvert(tag using gbk) collate gbk_chinese_ci;

02 +-----------------+-----------------+

03 | tag | COUNT(tag) |

04 +-----------------+-----------------+

05 | .Net | 3 |

06 | 10000小时 | 1 |

07 | Amazon | 9 |

08 | android | 57 |

09 | C语言 | 1 |

10 | Dennis Ritchie | 2 |

11 | Go语言 | 5 |

12 | IT见解 | 146 |

13 | JavaScript | 4 |

14 | John McCarthy | 1 |

15 | JQuery | 7 |

16 | Zynga | 1 |

17 | 阿里巴巴 | 28 |

18 | 贝尔实验室 | 1 |

19 | 互联网 | 24 |

20 | 简明现代魔法 | 1 |

21 | 淘宝网 | 2 |

22 | 信息图 | 1 |

23 | 余额宝 | 11 |

24 | 支付宝 | 14 |

25 | 植物大战僵尸 | 4 |

26 | 自媒体 | 3 |

27 +-----------------+-----------------+

上面是按 gbk 字符集排序的,那么如果按 utf8 又如何呢?

view sourceprint?

01 mysql select tag, COUNT(tag) from news GROUP BY tag order byconvert(tag using utf8) collate utf8_unicode_ci;

02 +-----------------+-----------------+

03 | tag | COUNT(tag) |

04 +-----------------+-----------------+

05 | .Net | 3 |

06 | 10000小时 | 1 |

07 | 12306 | 1 |

08 | C语言 | 1 |

09 | IT见解 | 146 |

10 | Quora | 4 |

11 | Twitch | 1 |

12 | Twitter | 19 |

13 | Zynga | 1 |

14 | 三星 | 3 |

15 | 专利 | 1 |

16 | 余额宝 | 11 |

17 | 开曼群岛 | 1 |

18 | 意志力 | 1 |

19 | 植物大战僵尸 | 4 |

20 | 注意力经济 | 1 |

21 | 简明现代魔法 | 1 |

22 | 诺基亚 | 12 |

23 | 诺贝尔奖 | 1 |

24 | 豆瓣 | 3 |

25 | 贝佐斯 | 1 |

26 | 贝尔实验室 | 1 |

27 | 轻博客 | 3 |

28 | 运营 | 1 |

29 | 量子计算机 | 1 |

30 | 黑莓 | 1 |

31 +-----------------+-----------------+

PS:ci是 case insensitive, 即 “大小写不敏感”, a 和 A 会在字符判断中会被当做一样的。

数字和引文排序是没问题,但为什么 H黑莓 会比 L量子计算机 靠后呢?这个在后面的章节会慢慢道来。

mysql汉字排序规则

order by (字段名) 应该可以吧

或者把字段的属性设置成binary再试试

如果还是不行 我是没什么好的主意了 答案补充 其实 select * from 表名 order by name asc 就应该可以了

如果不行试试 select * from 表名 order by binary name asc 答案补充 其中 name 为对应的字段名

mysql根据汉字首字母排序的方法并按字母分组

SELECT name FROM `user` ORDER BY CONVERT( name USING gbk ) ASC

直接就是按汉字首个字的首字母排序,自动都会分组了啊。


本文标题:mysql怎么对汉字排序 mysql按字母顺序排序
标题链接:http://csdahua.cn/article/dospsps.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流