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

SQL优化查询
EN

Stack Overflow用户
提问于 2012-05-03 14:14:59
回答 2查看 47关注 0票数 1

我使用以下查询,

代码语言:javascript
复制
SELECT qTermine.REISENR, 
       qTermine.REISEVON, 
       qTermine.REISEBIS, 
       MIN(qPreise.PREIS) AS PREIS 
FROM   qTermine, 
       qPreise 
WHERE  qPreise.REISENR = qTermine.REISENR 
       AND qPreise.PROVKLASSE = 1 
       AND qPreise.VERFUEGBAR <> 0 
GROUP  BY qTermine.REISENR, 
          qTermine.REISEVON, 
          qTermine.REISEBIS 

我只想选择那些价格最低的行。

这是可以的,还是我们可以优化它?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-05-03 14:21:57

查询本身就是好的。这个问题很难回答,因为对于大多数用途来说,你写的东西都很好。您当前是否遇到性能问题,或者此查询的执行时间是否过长?或者你只是小心翼翼,想要避免引入一个大的瓶颈?在后一种情况下,我认为您不需要担心;同样,在大多数情况下,这是很好的。

确保在两个表和qPreise.PREIS上都有REISENR索引。至于PROVKLASSEVERFUEGBAR,我有一种感觉,如果你要添加它们(你可以在你的执行计划中检查),它们将不够唯一,不足以让索引真正地被使用,但是如果不深入了解你的数据就很难判断。

票数 2
EN

Stack Overflow用户

发布于 2012-05-03 14:23:20

您的查询很好,如果您在"qPreise.PREIS“上有索引,您可以有更好的性能。

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

https://stackoverflow.com/questions/10426075

复制
相关文章

相似问题

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