gpt4 book ai didi

sql-server - Sql Join获取两个列表中的值

转载 作者:行者123 更新时间:2023-12-01 07:45:24 34 4
gpt4 key购买 nike

微软 SQL Server 2012

我有三个标量变量:

declare @ListA table (value int);
declare @ListB table (value int);
declare @InBoth table (value int);

我想获取两个列表中的数字列表。

insert into @InBoth 
select value
from @ListA
inner join @ListB on @ListA.value = @ListB.value;

我得到一个错误

Must declare the scalar variable

@ListA@ListB 都在 join 语句中。

如何获取两个列表中的数字列表?

最佳答案

您不能使用表变量名称作为别名,而是将别名名称赋予表变量并使用别名 标识列的名称

INSERT INTO @InBoth
SELECT A.value
FROM @ListA A
INNER JOIN @ListB B
ON A.value = B.value;

或者使用EXISTS操作符

INSERT INTO @InBoth
SELECT A.value
FROM @ListA A
WHERE EXISTS (SELECT 1
FROM @ListB B
WHERE A.value = B.value)

关于sql-server - Sql Join获取两个列表中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28971061/

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