无法找到错误的查询给予无效列错误
答
您不能在相同的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
您使用的公式,SELECT
从CTE
而不是下一次。
+0
如果我的公式太长,需要在查询中使用多个时间,那么这是唯一的方法吗? –
无法在同一查询中自引用别名列 – GoldBishop