mysql插入记录排序_性能 – 插入记录时的MySQL默认排序顺序

我认为情况正好相反.

我的评论基于我如何理解在SQL Server中工作的索引 – 如果我有机会阅读更多关于它们如何在MySQL中工作的话,我会尝试稍后修改.

以与索引排序相同的顺序插入行可能会有轻微的性能优势,而不是以相反的顺序插入它们.

如果以相同的顺序插入,并且要插入的下一行总是比现有行的排序顺序更大,那么您将总是在行数据的最后一页中找到下一个可用的空位(当存在时).

如果你做相反的事情,总是让你的下一个插入行按排序顺序比现有行更小,那么你可能总是在行数据的第一页中发生冲突,引擎会做更多的工作来改变行的位置如果页面有空间.

至于select语句中的order by子句:

1)SQL标准中没有关于索引的内容,除了ORDER BY子句之外,没有任何内容可以保证结果集排序.通常,SQL Server中只使用一个索引的查询将看到按索引顺序返回的结果.但是,如果隔离级别更改为“read uncommitted”(混乱?),那么它将更有可能按照它在内存或磁盘上找到的顺序返回行,这不一定是您想要的顺序.

2)如果select语句中的order by基于与索引完全相同的列标准,那么数据库服务器应该对索引顺序执行相同的操作,或者与索引顺序相反.这非常简单,除非您有一个多列索引,其中包含针对不同列的混合ASC-DESC声明.通过等于索引顺序和顺序等于反向索引顺序,您可以通过使用DESC和ASC替换索引声明中的ASC和DESC声明(显式和隐式)来确定反向索引顺序. order by子句.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值