首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不同的查询,不同的速度?

问不同的查询,不同的速度?
EN

Stack Overflow用户
提问于 2014-06-10 16:31:39
回答 1查看 40关注 0票数 1

我正在编写一个基于sqlite数据库的C++程序。我有一个带有各种字段的表table1。有许多函数需要读取table1的每一列

代码语言:javascript
复制
select * from table1 where (condition);

查询结果存储在适当的内存结构中。

其他函数只需要table1的第一个字段

代码语言:javascript
复制
select field1 from table1 where (condition);

我可以通过执行第一个查询来获得field1的值,并且只读取存储它的内存结构中的第一个字段,或者实现一个调用第二个查询的函数。我是否应该这样做,以提高我的程序的性能?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-10 17:07:13

您应该使用第二个查询,而不是主要出于性能考虑,而是因为它更清楚地指明了代码的用途。当您查询所有字段,然后抛出除一个以外的所有字段时,就会有人开始调试代码,并想知道为什么所有其他字段都未使用。

正交地,我想指出,在编程上使用select *只是在表模式在行的某一段时间发生变化时询问问题。我强烈建议明确列出所需的列,即使该列表是“所有当前可用的列”。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24146306

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档