【发布时间】:2018-10-03 12:58:57
【问题描述】:
我有一个查询,基本上是这样的:
SELECT
COUNT(*) OVER () AS TotalRowsFound,
t.Title
, t.ItemID
, t.UploadDate
, t.SevenDaySales as SelectedColumnSales
, t.QuantitySold
, t.CurrentPrice
, t.CurrentPrice as LastSalePrice
FROM
dbo.SearchedUserItems t
WHERE
T.SearchedUserID = 5
GROUP BY
t.ItemID,t.UploadDate,t.SelectedColumnSales,t.QuantitySold,t.CurrentPrice,LastSalePrice
ORDER BY SelectedColumnSales DESC
OFFSET + 55*0 ROWS FETCH NEXT 55 ROWS ONLY;
问题是我无法完成查询,因为它说 SelectedColumnSales 和 LastSalePrice 列不存在...
有什么解决方法吗? =/
我如何才能完成此查询以使其实际工作并在 group by 语句或其他方式中使用别名?
有人可以帮帮我吗?
【问题讨论】:
-
您在 GROUP BY 子句中混淆了列名和列别名。
-
您需要在group by中直接使用t.SevenDaySales
-
将 SelectColumnSales 换成组中的 t.SevenDaySales
标签: sql sql-server sql-server-2012 group-by alias