首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >优化数据库查询

优化数据库查询
EN

Stack Overflow用户
提问于 2016-11-08 18:20:58
回答 1查看 43关注 0票数 0

我的问题是,什么时候我们应该为sql数据库中的给定任务要求多少数据?

假设我有PostgreSql数据库。我有一个产品表,产品有20个字段。

在一个系统中,有些地方实际上只需要产品id、名称和价格。有些人认为,我应该只要求数据库中的这三个字段是有效的。但是,我觉得开发人员总是做productService.getProduct(id),然后选择他们需要的字段要比为这些特定字段单独创建一个类或查询要容易得多。

对于查询的速度来说,如果我问3或20个字段,这真的重要吗?它能增加多少负荷?

(我是java开发人员,思维方式是“早期优化是万恶之源”。)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-11-08 18:50:20

就像所有的优化,当它重要的时候。分析器和其他工具(例如postgres的解释分析)将通知您。

实际的机制取决于很多事情:所使用的数据库、表/模式、表空间设置等,因此不可能给出任何明确的答案,但由于所移动的数据量不同,无论您移动10列的100 000行还是3列的100 000行,自然会产生影响。

如果从磁盘读取相同数量的页面,则实际查询可能没有明显的差异,但内存和网络的使用自然会有所不同。

幸运的是,如果原始查询成为瓶颈,您可以重构代码和查询以选择更少的数据。

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

https://stackoverflow.com/questions/40493887

复制
相关文章

相似问题

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