如何在使用&#34时将返回的结果分配给变量;除了"在ms msql中?

时间:2014-05-22 18:53:27

标签: sql sql-server database

我有两个临时表,我正在比较。我想有一个变量来保存这两个表之间的差异计数,或者只是来自的变量差异。

到目前为止,我有以下查询

Declare @comparison AS NVARCHAR(2000);
SET @comparison=(select * from #dboPerson1
                            except
                 select * from #dboPerson2);
Select @comparison

我收到以下错误:

Only one expression can be specified in the select list when the subquery is not introduced with EXISTS.

我尝试在select之前添加count(*),并且比较变量变为两个临时表之间不同的记录数。

但是除了结果和计数之外它是打印选择*。

除非我选择选择变量名称,否则我想将差异分配给两个变量而不在控制台上显示它。

希望它有意义。我正在使用sql server 2012 btw。

感谢。

1 个答案:

答案 0 :(得分:2)

  

我想要一个变量来保存差异计数[...]

DECLARE @comparison INT;
SET @comparison=
(
    SELECT COUNT(*) 
    FROM (select * from #dboPerson1 except select * from #dboPerson2) x
);