Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sql-server-2005/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Tsql 使用不同的服务器、不同的数据库和不同的表内部连接4列_Tsql_Sql Server 2005_Inner Join - Fatal编程技术网

Tsql 使用不同的服务器、不同的数据库和不同的表内部连接4列

Tsql 使用不同的服务器、不同的数据库和不同的表内部连接4列,tsql,sql-server-2005,inner-join,Tsql,Sql Server 2005,Inner Join,我有3台服务器: ECPAYSERV2 POSSQLSERVER ECPAYSERV1 3数据库 ECPNWEB ECPNPOS ECPNDB 和3张桌子 account branch terminal 我还完成了与服务器的链接: ECPAYSERV2.ECPNWEB.dbo.account POSSQLSERVER.ECPNPOS.dbo.branch ECPAYSERV1.ECPNDB.dbo.terminal 应该看到的字段如下所示 AccountI

我有3台服务器:

 ECPAYSERV2 
 POSSQLSERVER 
 ECPAYSERV1 
3数据库

 ECPNWEB
 ECPNPOS
 ECPNDB
和3张桌子

 account
 branch
 terminal
我还完成了与服务器的链接:

 ECPAYSERV2.ECPNWEB.dbo.account
 POSSQLSERVER.ECPNPOS.dbo.branch
 ECPAYSERV1.ECPNDB.dbo.terminal
应该看到的字段如下所示

 AccountID = ECPAYSERV2.ECPNWEB.dbo.account.(accntid)
 BranchID = ECPAYSERV2.ECPNWEB.dbo.branch.(branchid)
 TID = ECPAYSERV1.ECPNDB.dbo.terminal.(TID)
 Store # = POSSQLSERVER.ECPNPOS.dbo.branch.(Storeno)
 Store name = ECPAYSERV2.ECPNWEB.dbo.account.(accountholder)
 Branch name = ECPAYSERV2.ECPNWEB.dbo.brachn.(branchname) ,  POSSQLSERVER.ECPNPOS.dbo.branch.(branchname) , ECPAYSERV1.ECPNDB.dbo.terminal.(retail_store_code)
附件中的数据为列。,

要更清楚地了解所有这些,请参阅表中的列

表:账户

 |Accntid|managedby|Accountholder|Description|AccountType|ContactPerson|ContactNumber|EmailAddress|
表:分行

 |BranchID|BranchName|AccountID|StoreNo|Description|Status|
表:终端

 |TerminalID|TID|retail_store_code|t_distributor_code|
我所要做的就是用正确的数据得到这个输出

 |accntid|accountholder|tid|storeno|branchname|branchid|
这是我尝试的,但没有得到正确的输出

 SELECT account.accntid,account.accountholder,terminal.tid,branch.storeno,branch.branchname,branch1.branchid
 FROM ECPAYSERV2.ECPNWEB.dbo.account as account 
 INNER JOIN POSSQLSERVER.ECPNPOS.dbo.branch as branch
  ON account.accntid=branch.branchid 
 INNER JOIN ECPAYSERV2.ECPNWEB.dbo.branch as branch1
  ON account.accntid=branch1.branchid
 INNER JOIN ECPAYSERV1.ECPNDB.dbo.terminal as terminal 
  ON account.accntid=terminal.tid
请帮我解决这件事,谢谢:(


“?”不正确,但不清楚终端的哪一列是帐户的FK。

乍一看:当您需要加入pk时,您正在用pk加入pkfk@tschmit007那怎么办呢?
SELECT
    account.accntid, account.accountholder, terminal.tid, branch.storeno, branch.branchname, branch1.branchid
FROM 
    ECPAYSERV2.ECPNWEB.dbo.account as account 
    INNER JOIN POSSQLSERVER.ECPNPOS.dbo.branch as branch
        ON account.accntid=branch.AccountID 
    INNER JOIN ECPAYSERV2.ECPNWEB.dbo.branch as branch1
        ON account.accntid=branch1.AccountID
    INNER JOIN ECPAYSERV1.ECPNDB.dbo.terminal as terminal 
        ON account.accntid=terminal.???