无法在SQL内部的子查询中使用别名
我正在尝试在选择语句中的子查询中使用一个类似的别名,如下所示:
SELECT
InvoiceId,
InvoiceTotal,
(SELECT
AVG(InvoiceTotal)
FROM Invoices) AS InvoiceAverage,
InvoiceTotal - (SELECT InvoiceAverage)
FROM Invoices;
当我尝试执行查询时,我会收到此错误:
“无效列”名称“ InvoICeavering”。
I'm trying to use an alias inside a subquery in a select statement like the one below:
SELECT
InvoiceId,
InvoiceTotal,
(SELECT
AVG(InvoiceTotal)
FROM Invoices) AS InvoiceAverage,
InvoiceTotal - (SELECT InvoiceAverage)
FROM Invoices;
When I try to execute the query I get this error:
'Invalid column name 'InvoiceAverage'.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这里无需在此处使用子查询,请使用窗口的聚合物:
No need for a subquery here, use windowed aggregates:
您可以直接从
InvoIcetotal
AS直接减去子查询值,也可以将AVG值存储在变量中并在选择查询中使用
You may directly minus the sub query value from
InvoiceTotal
asor you may store the AVG value in a variable and use in the select query