我有以下情况。我正在使用2个独立的SQL服务器。服务器A托管公司的HR数据。服务器a上有一个视图,为每个员工提供主管信息。我需要让下一个主管信息在链上。所以我用这个来代码,我是从DB管理员那里得到的,以实现那个
if( $("#bookmark1").is(":checked")){
var $item1 = $('<span>').text("item 1 ");
$item1.on('click', function(e){ /*do stuff*/ });
$("#bookmark-content").empty().append($item1);
}
现在我有一个单独的SQL Server服务器B上的数据,其中包含一些报告数据,ReportData表包含的员工ID与服务器A上面视图中显示的员工ID号相匹配。问题是如何合并服务器A中的视图和服务器B上的员工ID,因此我可以将主管链接到服务器B上的数据行。
我看过this帖子,但是无法正确使用语法使其适用于我的情况
由于
答案 0 :(得分:3)
您需要链接的服务器。然后使用
[ServerName].[DatabaseName].[dbo].[tableName]
答案 1 :(得分:1)
为此,我创建了一个SSIS包,每晚一次将数据从lawdata服务器下载到Server B上的数据库中 - 可能只是截断并重新加载。这样,您在服务器B上使用lawdata数据的所有查询都被本地化到一台服务器上的一个数据库。
答案 2 :(得分:0)
在你的代码中看起来你在自己的东西上做了一个左外连接。尝试
SELECT *
FROM [server1].[dbname].[dbo].[tablename] A
left outer join [server2].[dbname].[dbo].[tablename] B on A.columnname = B.columnname
where ["insert where clause here"]
答案 3 :(得分:0)
以防其他人试图解决同样的问题,这是我提出的解决方案;感谢上面给出的建议
select rd.*, ru1.emp_first, ru1.emp_last, ru1.Super_Last as FirstLineLast,
Super_first as FirstLineFirst,
ru2.Super_Last as SecondLineLast,
2.Super_first as SecondLineFirst
from [TaserEvidence].[dbo].[ReportData] rd left outer join
[soops-lawrept].[lawdata].[dbo].[My_View] ru1 on rd.OwnerBadgeId = ru1.emp_EID
left outer join
[soops-lawrept].[lawdata].[dbo].[rob_users] ru2 on ru1.super_EID = ru2.EMP_EID