T-SQL中的括号用法?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了T-SQL中的括号用法?相关的知识,希望对你有一定的参考价值。

我正在尝试设置变量的值

declare @tablename nvarchar(1000);

set @tablename = SELECT TOP 1 NAME FROM SYS.TABLES ORDER BY NAME; //Error
set @tablename = (SELECT TOP 1 @tablename = NAME FROM SYS.TABLES ORDER BY NAME;) //Works fine

这里做了什么魔术括号?

我想这与评估有关。但是,为什么它不在第一条语句中求值呢?

答案

子查询需要使用自己的括号。因此第二个具有有效的语法,因为它正在使用它们。

您可能对selectset感到困惑。您可以使用select设置参数,不需要括号:

SELECT TOP 1 @tablename = NAME
FROM SYS.TABLES
ORDER BY NAME;

以上是关于T-SQL中的括号用法?的主要内容,如果未能解决你的问题,请参考以下文章

T-SQL中的APPLY用法

T-SQL中的APPLY用法

当我在括号中调用它时,Thymeleaf 不会解析我的应用程序中的片段。这是为啥?

T-SQL里面的尖括号(<)是啥意思?

sQLserver T-SQL 事务的用法

sql语句中方括号[]有啥用?