假设我有一个包含A,B和C列的表。我想生成一个包含两列的报告:第一列是(A + B),第二列是(A + B)* C - 但是我不想重新计算(A + B),我想在同一报告的第二列中使用第一列。我提前感谢使用Oracle DB。
答案 0 :(得分:0)
您可以执行类似的操作(这是SQL Server语法,您没有指定DBMS;大多数DBMS应该使用小的更改):
select ab, ab * c
from
(
select a + b ab, c
from mytable
where...
) x
然而,我并不相信它会有很大帮助。如果报告太慢,我建议首先考虑改善表格中的索引,但前提是我知道我有问题。
优化的第一条规则:过早优化总是错误的!