加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – SELECT查询何时开始返回行?

发布时间:2020-12-12 08:26:03 所属栏目:MsSql教程 来源:网络整理
导读:假设以下查询: SELECT * FROM table; DBMS会立即将其提供给第一行,否则它首先将所有行(将它们保存在某种缓冲区中),然后一次给我所有行? 如果我的问题不清楚假设表中的行数量使得DBMS将花费正好60分钟来获取所有行.数据库管理系统将逐渐返回60分钟的行,还是
假设以下查询:
SELECT * FROM table;

DBMS会立即将其提供给第一行,否则它首先将所有行(将它们保存在某种缓冲区中),然后一次给我所有行?

如果我的问题不清楚假设表中的行数量使得DBMS将花费正好60分钟来获取所有行.数据库管理系统将逐渐返回60分钟的行,还是等待60分钟才能收到任何数据?

解决方法

在PostgreSQL中,如果查询执行计划允许,服务器将尽快将行返回给客户端.在您的简单示例中就是这种情况.在其他情况下,例如,如果您最终有排序,则必须等待完成.

但是,如果使用标准的libpq接口,则客户端库将在内存中建立整个结果,然后将其返回到客户端程序.要逐行获取结果,您需要在libpq中使用single-row mode.如果您使用其他界面或其他语言,结果可能会有所不同.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读