请教一个关于数据库排序的问题

请教一个关于数据库排序的问题,第1张

select

from 表

order by cast(substring(列名,2,char_length(列名)-2) as unsigned integer) asc

PS:若要降序排列将上面的asc用desc替换即可

当字段类型是本文时,

排序方法会一个字元一个字元比较

1

=>

'1'

2

=>

'2'

10

=>

'10'

'2'

>

'10'

因为比较时先比较两个文字的第一个字元,

'2'

>

'1'

所以

'2'

>

'10'

所以在编写数据时

'1'

=>

'0001'

'2'

=>

'0002'

'10'

=>

'0010'

'100'

=>

'0100'

这样子排序就会如你预期的顺序

或者如楼上所言,把字段类型换成数字型就可以了

select 名次=(select count(1) from 成绩表 a where aid=bid and a总分>=b总分),学号,数学,语文,英语,总分 from 成绩表 b order by 总分 desc

以上就是关于请教一个关于数据库排序的问题全部的内容,包括:请教一个关于数据库排序的问题、access数据库怎样才能排序请知道的人帮忙解决一下!、数据库排序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9866770.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存