【发布时间】:2018-07-11 12:05:21
【问题描述】:
此查询在 Oracle 中有效:
SELECT EXTRACT(YEAR FROM "DATE_OF_PUBLICATION") AS years,
Count("LOSS_AMOUNT_(LOCAL_CCY)") AS events,
Max("LOSS_AMOUNT_(LOCAL_CCY)") AS max_losses,
Sum("LOSS_AMOUNT_(LOCAL_CCY)") AS sum_losses
FROM (
select *
from (
select "DATE_OF_PUBLICATION",
"LOSS_AMOUNT_(LOCAL_CCY)"
FROM TEST
ORDER BY "LOSS_AMOUNT_(LOCAL_CCY)" DESC
)
)
GROUP BY EXTRACT(YEAR FROM "DATE_OF_PUBLICATION")
ORDER BY EXTRACT(YEAR FROM "DATE_OF_PUBLICATION")
现在,我在 SQLServer 中执行了这个查询:
SELECT DATEPART(YEAR,"DATE_OF_PUBLICATION") AS years,
Count("LOSS_AMOUNT_(LOCAL_CCY)") AS events,
Max("LOSS_AMOUNT_(LOCAL_CCY)") AS max_losses,
sum("LOSS_AMOUNT_(LOCAL_CCY)") AS sum_losses
FROM (
select *
from (
select "DATE_OF_PUBLICATION",
"LOSS_AMOUNT_(LOCAL_CCY)"
FROM TEST
ORDER BY "LOSS_AMOUNT_(LOCAL_CCY)" DESC
)
)
GROUP BY DATEPART (YEAR ,"DATE_OF_PUBLICATION")
ORDER BY DATEPART(YEAR ,"DATE_OF_PUBLICATION")
我收到此错误:
The ORDER BY clause is invalid in views, inline functions, derived tables, subqueries, and
common table expressions, unless TOP, OFFSET or FOR XML is also specified.
【问题讨论】:
标签: sql sql-server oracle tsql