【问题标题】:Create Variable from SELECT QUERY Results从 SELECT QUERY 结果创建变量
【发布时间】:2020-05-29 01:17:53
【问题描述】:
SELECT DISTINCT 
[State_IDs]

FROM [Database].[dbo].[enrollment]
WHERE [Market_State] = 'CO'

我试图弄清楚如何从 SELECT 查询中声明一个变量...具有多个返回/行。

我想像数组一样使用它(?)...我想提取状态 ID 列表,将其声明为变量,以便稍后在我的代码中从不同的地方提取数据时使用它我没有这些过滤器选项的表。

下面的代码向我抛出“子查询返回超过 1 个值”错误:

DECLARE @CO_IDS VARCHAR(25)
SET @CO_IDS =
    (   
        SELECT DISTINCT 
        [State_IDs]

        FROM [Database].[dbo].[enrollment]
        WHERE [Market_State] = 'CO'
    )

任何帮助将不胜感激。

【问题讨论】:

  • 你使用什么数据库?
  • Microsoft SQL Azure (RTM) - 12.0.2000.8
  • 将此数据库添加到您问题中的标签中。这很重要。

标签: sql arrays azure variables select


【解决方案1】:

你可以定义一个表类型变量

DECLARE @CO_IDS table(CO_ID VARCHAR(25)); 

Insert Into @CO_IDS (CO_ID)
SELECT DISTINCT [State_IDs]
FROM [Database].[dbo].[enrollment]
WHERE [Market_State] = 'CO'

Select CO_ID from @CO_IDS

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-08
    • 1970-01-01
    • 1970-01-01
    • 2018-10-31
    • 2011-12-13
    • 1970-01-01
    相关资源
    最近更新 更多