我想使用某些列的一部分来创建order by
内容。例如,user
列的一些记录如下所示
vip1,vip2,vip21,vip10,vip100
如果我按用户订购
,订单将为
vip1,vip10,vip100,vip2,vip21
那我怎样才能得到如下结果
vip1,vip2,vip10,vip21,vip100
谢谢。
最佳答案
什么是 RDBMS?
对于 SQL Server 来说,要进行数字排序而不是字典排序,它会类似于
ORDER BY CAST(RIGHT(col, LEN(col)-3) AS INT)
对于 MySQL
ORDER BY CAST(RIGHT(col, LENGTH(col)-3) AS UNSIGNED)
但是如果所有行都相同,为什么还要存储 vip
部分呢?
关于sql - 如何按列的一部分排序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3286446/