我有2个单独的SQL Server数据库,我想查询并比较结果。
例如:
DB1
Select *
from Customers
where dtcreated > @startdate
此查询将为我提供在特定日期之后创建的客户列表。
我希望得到上面的结果,并查询另一个数据库(DB2),告诉我上述哪些查询客户仍处于活动状态。
类似的东西:
DB2
Select *
From Customers
Where bactive = 'True'
(and exists in DB1 query)
有办法做到这一点吗?
输出:
Number of Records from DB1 Number Active in DB2
155 67
答案 0 :(得分:1)
您可以通过指定databasename和schema +表名来执行跨数据库查询。
Select *
From Customers b
Where bactive = 'True'
and exists
(Select 'x' from
database1.dbo.Customers A
where a.dtcreated > @startdate
and a.key = b.key)
对不起,我对示例查询和示例输出感到有点困惑。但是使用这种技术你可以按照自己喜欢的方式计算
答案 1 :(得分:0)
你可以试试这个:
Select *
From db2.dbo.Customers
Where bactive = 'True'
and exists(Select * from db1.dbo.Customers where dtcreated > @startdate)