【发布时间】:2021-11-24 15:14:08
【问题描述】:
我需要重写以下查询以进行优化,但我遇到了一些麻烦
SELECT w.wname, SUM(w.price) sold_total, FROM wine w GROUP BY w.wname;
SELECT * from class WHERE CID = 'RIES ' OR CID = 'CHARDN' OR CID = 'PINOT';
我想我需要为第一个对象创建一些对象,为第二个对象创建一个绑定变量,但我不确定。也不确定最佳语法。
希望得到一些帮助
【问题讨论】:
-
在第二个查询中,请从将 * 替换为您真正需要的列开始
-
第一个不是有效的 SQL 语句。
sold_total后面多了一个逗号。我不确定这里作业的目标是什么。你真的想重写查询吗?因为第一个查询似乎是表达查询的一种完全合理的方式。还是优化查询?在这种情况下,我们需要从您要优化什么开始(例如,减少逻辑读取的作业是什么?)以及查询计划是什么? -
是的,重点是编写它们并使用知识来优化它们
-
有没有办法在查询之外计算 sum 或 w.price 然后调用它?
标签: sql oracle performance