gpt4 book ai didi

sql - 将 SELECT 语句的值存储到 SQL Server 上的变量中

转载 作者:行者123 更新时间:2023-12-02 20:13:21 27 4
gpt4 key购买 nike

我正在尝试从系统对象、同义词中选择值,然后将其存储到@variable 中。然后我可以从 @variable 中选择数据而无需关心服务器。但是它一直说我需要声明标量变量。谁能帮忙?

DECLARE @variable NVARCHAR(100)

SELECT @variable = name
FROM sys.synonyms
WHERE base_object_name = '[ABC].[dbo].[tblABC]'

SELECT * FROM @variable

最佳答案

您的查询选择所有名称并将它们连续存储在变量中,这意味着每个名称都会覆盖先前存储的名称,因此当 SELECT 语句终止时,只有最后选择的名称在变量中可用。如果您想要一个可以像临时表一样查询的变量,则必须声明一个表变量并将名称插入该“表”,然后您可以针对该变量运行 select 语句:

Declare @variable table (name nvarchar(128));

INSERT INTO @variable (name)
SELECT name
FROM sys.synonyms
where base_object_name = '[ABC].[dbo].[tblABC]';

select * from @variable;

但是:对于这个查询,服务器也会“关心”。

关于sql - 将 SELECT 语句的值存储到 SQL Server 上的变量中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53017192/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com