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
这里做了什么魔术括号?
我想这与评估有关。但是,为什么它不在第一条语句中求值呢?
答案
子查询需要使用自己的括号。因此第二个具有有效的语法,因为它正在使用它们。
您可能对select
与set
感到困惑。您可以使用select
设置参数,不需要括号:
SELECT TOP 1 @tablename = NAME
FROM SYS.TABLES
ORDER BY NAME;
以上是关于T-SQL中的括号用法?的主要内容,如果未能解决你的问题,请参考以下文章