gpt4 book ai didi

sql - 任何 SQL 数据库 : When is it better to fetch a whole table instead of querying for particular rows?

转载 作者:太空狗 更新时间:2023-10-30 01:58:39 25 4
gpt4 key购买 nike

我有一个可能包含 10k 到 100k 行的表,我需要最多 1 或 2000 行的不同集合,但通常要少得多。我希望这些查询尽可能快,我想知道哪种方法通常更聪明:

  1. 始终使用始终不同的 WHERE 子句准确查询我需要的行。
  2. 将整个表加载到我的应用程序内存中的缓存中并在那里搜索,定期同步缓存
  3. 始终查询整个表(没有 WHERE 子句),让 SQL 服务器处理缓存(它始终是相同的查询,因此它可以缓存结果)并根据需要过滤输出

我暂时不想了解特定的数据库引擎。

最佳答案

对于 10K 到 100K 行,数字 1 显然是我的赢家。如果它小于 1K,我可能会说将其缓存在应用程序中,但是对于这么多行,让数据库执行其设计目的。有了适当的索引,数字 1 将是最好的选择。

如果您每次都反复拉取相同的数据集,那么缓存结果可能也是一个更好的选择,但是当您要始终拥有不同的位置时,最好让数据库搞定此事。

不过就像我说的,只要确保您在所有适当的字段上都有良好的索引。

关于sql - 任何 SQL 数据库 : When is it better to fetch a whole table instead of querying for particular rows?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/469647/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com