解决char型主键排序问题

数据库中的主键是char型的,数据量在1~9个的时候没有问题,可是第10个数据的位置出现问题了,在数据库中成了以下排序方法了:

1

10

2

3

4

5

6

7

8

9

很明显不符合我的要求,可是数据库中这个char型主键又不能改类型。怎么办?

在网上拔出了一个解决方法:

--因为主键默认有升序聚集索引,所以在表中是按照该字段的升序排列,可以在从数据库取数据的SQL语句上改动,如:
select * from 表名 order by cast(主键 as int)

问题解决了。哈哈!

作者:观海看云个人开发历程知识库 - 博客园
出处:http://www.cnblogs.com/zhangtao/
文章版权归本人所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
原文地址:https://www.cnblogs.com/zhangtao/p/1691889.html