2014-05-18 37 views
1

我有两个数据库分别命名它们为db1,db2。在两个我有一个名为'用户'的用户名和密码字段的表。2数据库。如果第一个数值不存在,则在第二个数据库中查找/搜索

问题是:如果用户在第一个数据库中不存在,然后,在第二个中查找/搜索。

还挺新的SQL Server所以这是我迄今为止...

if exists(select userid from db1 where userid='whatever') 
    select * from db1 where userid='whatever' 
else 
    select * from db2 where userid='whatever' 

我的问题是,这是执行此操作的最佳方法是什么?有没有其他方法可以做到这一点?如果是的话,请分享...

+0

选择关键字查找表中的值。你有两个表或两个数据库吗? – Sefa

+0

我有两个不同的数据库。在这两个我也有同样的表。 – iVoidWarranties

回答

2

您可以使用@@ROWCOUNT函数返回影响或最后一条语句读取的行数。

select * from db1.dbo.users where userid='whatever' 
IF(@@ROWCOUNT = 0) 
    BEGIN 
    select * from db2.dbo.users where userid='whatever' 
    END 
+0

谢谢,会尝试一下... – iVoidWarranties

相关问题