云栖问答

找不到答案?去提问题

数据存储与数据库 19个月前

表格存储主键如果是字符串如何排序

我想按照纪录创建先后顺序排序,又看到文档里面说主键最好是个随机数,那就是字符串了,字符串的话我如何排序

17个回答

1

木洛

『按照创建先后顺序排序』,您的整张表上的数据,都需要按照创建先后顺序排序吗?

线索有点少,需要补充一些信息后才能给您设计上的建议,需要您提供:

  1. 每行数据的存储字段
  2. 会存在哪些查询
  3. 大概的读写量

0

水灵儿

Mark了

0

水灵儿

Mark了

0

1270989018532952

主键的目的是,非空和唯一,用于标识(zhì)唯一的记录,排序最后使用专有排序列。

0

tbula

可以用时间作为前缀,再跟一个随机数避免重复

0

1010680306880571

1

0

元镇

自增列是一个不错的选择。

0

乔尕

0

1974180307878315

分享

0

注浆机

楼主的意思应该是怕主键重复, 比如名字这种, 大家都可以叫张三, 但是单纯使用名字的话, 就不能有两个张三存在了.

其实你排序不用使用主键, 里面加一个 Field 就好了. 使用的时候注意一下别一次太多数据进行 sort 就可以了.

0

1974180307878315

学习

0

1974180307878315

学习

0

淡斋

应该使用int 为主键,另外随机数确实可以用text 表达用于去重复。

0

1010680306880571

感谢分享

0

1974180307878315

2

0

2梦

不太确定是否理解对了楼主的意思,一般按创建先后顺序的话,用自增的int就可以了,保证顺序,还节省存储空间,没必要用uuid。
这样默认物理索引就是创建的先后顺序,但是注意如果其他字段有创建索引的话,where 过滤时要注释是否 修改了默认排序。

1
GO
10789
浏览
0
收藏
邀请他人回答
提供海量、安全和高可靠的云存储服务。RESTful API的平台无关性,容量和处理能力的弹性扩展,按实际容量付费...

作为阿里云数据存储产品体系的重要组成部分,致力于提供低成本、高可靠的数据归档服务,适合于海量数据的长期归档、备份...

是阿里云为云服务器ECS提供的低时延、持久性、高可靠的数据块级随机存储。

为您提供简单高效、处理能力可弹性伸缩的计算服务,帮助您快速构建更稳定、安全的应用,提升运维效率,降低 IT 成本...