SQL Server查询错误-ORDER BY子句在视图中无效

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL Server查询错误-ORDER BY子句在视图中无效相关的知识,希望对你有一定的参考价值。

我正在运行以下代码。运行此代码时,出现错误消息:

ORDER BY子句在视图,内联函数,派生视图中无效表,子查询和公用表表达式,除非TOP或FOR还指定了XML。

我不确定为什么会收到此错误消息。非常感谢您的帮助。

SELECT  a.DELINQ_BUCKET_GROUP, a.vv_count
FROM 
(   
    SELECT  DELINQ_BUCKET_GROUP, 
            CASE WHEN DELINQ_BUCKET_GROUP IS NULL THEN 
                    SUM(CASE WHEN DELINQ_BUCKET_GROUP IS NULL THEN 1 ELSE 0 END)
                ELSE COUNT(DELINQ_BUCKET_GROUP) 
            END AS vv_count 
    FROM    DCSReporting.dbo.DIM_DELINQUENT_BUCKET
    GROUP BY DELINQ_BUCKET_GROUP
    ORDER BY vv_count DESC
) a
WHERE rownum<=100
答案

如果使用SQL Server 2012或更高版本,请在Offset 0 Rows之后使用Order By

SELECT Id,
       Name       
FROM Table

ORDER BY Id 
OFFSET 0 ROWS

希望这会有所帮助。

以上是关于SQL Server查询错误-ORDER BY子句在视图中无效的主要内容,如果未能解决你的问题,请参考以下文章

JPA 和 SQL Server 的 ORDER BY 子句中的列无效

sqlserver 创建视图失败,原因:ORDER BY 子句在视图、内联函数、派生表、子查询和公用表表达式中无效

在 Toad for Sql Server 2016 中使用带有 Union All 的 Order By 子句时出现奇怪的语法错误

SQL 错误“视图中的 ORDER BY 子句无效...”

SQL SERVER语句提示错误 delete top (5) FROM (SELECT top 100 percent * FROM 表名 ORDER BY DATE0) a

在 sql 查询中使用 group/order by 和 union 子句