无法找到错误的查询给予无效列错误

问题描述:

我写这篇文章的查询,但得到错误“无效列”我想这answer ,但没有运气, 下面是表错无法找到错误的查询给予无效列错误

enter image description here

enter image description here

+1

无法在同一查询中自引用别名列 – GoldBishop

您不能在相同的SELECT语句中使用别名。要么你把它放在一个子查询:

SELECT 
    npv, npv - 1000 
FROM (
    SELECT (listprice - standardcost) * quantity AS npv 
    FROM SampleTable 
) t 

或重用的公式:如果您使用的公式中多次嵌套或加入查询

SELECT 
    (listprice - standardcost) * quantity AS npv, 
    ((listprice - standardcost) * quantity) - 1000 
FROM SampleTable 

,你可以把它放在一个CTE

WITH Cte AS(
    SELECT * 
     (listprice - standardcost) * quantity AS npv, 
     ((listprice - standardcost) * quantity) - 1000 AS colAlias -- your alias here 
    FROM SampleTale 
) 
SELECT * FROM Cte 

您使用的公式,SELECTCTE而不是下一次。

+0

如果我的公式太长,需要在查询中使用多个时间,那么这是唯一的方法吗? –