首页新闻招聘找找看知识库

数据库执行查询语句是单线程还是多线程

0
[待解决问题]

1、数据库执行查询语句是单线程还是多线程?

2、比如执行了:select * from student where name="张飞",查询结果是多条时,是按student表里的存储顺序来显示的吗?是随机显示,还是按student表主键id排序后显示出来的?

3、如果是没排序的随机显示,是不是就说明数据库执行单条SQL查询用的是多线程

哈喽168的主页 哈喽168 | 初学一级 | 园豆:197
提问于:2018-05-17 10:18
< >
分享
所有回答(2)
0

如果没指定排序字段,通常会按照聚集索引的排序方式进行排序

dudu | 园豆:40635 (高人七级) | 2018-05-17 10:30

那数据库会开多线程来完成这条查询吗

支持(0) 反对(0) 哈喽168 | 园豆:197 (初学一级) | 2018-05-17 14:14

@哈喽168: 详见 Multi Thread in SQL?

支持(0) 反对(0) dudu | 园豆:40635 (高人七级) | 2018-05-17 15:18
0

数据库引擎执行的应该是多线程,在查询大表格的时候,数据库往往能很快给出查询结果。如果是单线程,查询速度没有那么快。但是在使用的时候,感觉就像是单线程一样,是将每个线程的结果又做了整理。这应该是采用的分布式机制。所以oracle,sql这些数据库的价格高得吓人。

贪心狸猫 | 园豆:861 (小虾三级) | 2018-05-18 17:21
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册