请帮助我理解下面的内容
为什么
(select top 1 * from dbo.module order by [order])
抛出错误?
当
select top 1 * from dbo.module
和
select top 1 * from dbo.module order by [order]
不是吗?
答案 0 :(得分:1)
在整个语句中使用括号不是一个好的语法/语句。这有效:
(SELECT top 1 * FROM dbo.module) ORDER BY [order]
答案 1 :(得分:1)
因为SQL Server执行语句,并且语句具有为它们指定的确切语法。
SELECT语句必须以SELECT关键字开头。 如果语句以括号开头,则它是子查询,并且您不能在其中使用“排序依据”。