我尝试从数据库系统的运行过程给个思路。针对第一个 SQL,首先进行 TableScan ,读取所有 data_point_id 满足条件的元组,这里行为在其上有索引,所以会变成一个 IndexScan。然后是进行 Order by 操作,返回前两个数据。针对第二个 SQL,构建的索引似乎并不能加速数据定位的过程,首先你是在进行点查询,我认为应该是使用 hash table 作为索引数据结构,这个情况下,索引项的 key 是无序的,因此会抽取所有 data_point_id 满足条件的元组,不管 create_time的情况。因为又有使用 order by,所以使用 B+树 也是有可能的,这种情况下,可能会加速,具体情况我也分析不清楚。个人认为, Hash table 的可能性更大。
点赞 评论

相关推荐

想干测开的tomca...:这份简历是“大一新生硬凹资深后端”的典型反面教材,槽点离谱到能让面试官直接笑出声: ### 1. 「年龄+入学时间」和项目复杂度完全脱节,可信度直接归0 你2024年7月才入学(现在刚读了1年多),19岁的大一新生,能把Vue3+Spring Boot+ShardingSphere+K8s+AI这些技术全塞进两个项目里?别说实际开发,光把这些技术的文档看完都得半年——这不是“能力强”,是“把招聘JD里的技术词全抄过来造假”,明摆着没碰过实际代码
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务