Mysql没有';t正确排序varchar列
我有一个如下所示的数据库表:Mysql没有';t正确排序varchar列,mysql,sorting,Mysql,Sorting,我有一个如下所示的数据库表: projects - id (autoincrement) - client_id (unsigned int) - project_id (unsigned int) - project_type (varchar) - project_name (varchar) - is_active (tinyint) select * from projects order by project_name asc 在我的模式中,我有不同的项目类型,每个项目类型都有自己
projects
- id (autoincrement)
- client_id (unsigned int)
- project_id (unsigned int)
- project_type (varchar)
- project_name (varchar)
- is_active (tinyint)
select * from projects order by project_name asc
在我的模式中,我有不同的项目类型,每个项目类型都有自己的表,这就是为什么项目id和项目类型是为。一个项目和一个客户有关,一个客户有很多项目。也就是说,当我运行这样一个简单的查询时:
projects
- id (autoincrement)
- client_id (unsigned int)
- project_id (unsigned int)
- project_type (varchar)
- project_name (varchar)
- is_active (tinyint)
select * from projects order by project_name asc
它不像我预期的那样从a-z返回项目的排序列表,而是对一些结果进行排序并“重置”排序。举个例子,如果我总共有40条记录,它从a-z排序35条,然后从a到z再开始排序
例如:
arrow
car
family
google
hitman
ant
zeus
这就是我得到的结果,它确实是按块排序的,但我不明白为什么。该列的排序规则是什么?显示
Show CREATE TABLE projects
的输出。有些价值是资本化的,而其他价值不是资本化的吗?字符串是否完全包含您认为它们包含的内容(请使用LENGTH()
检查,或者在某些字符串的开头是否有空格或不可打印的内容?两个词:leading space@ÁlvaroGonzález Bingo,我不敢相信我之前没有检查,谢谢你们。