两个表之间的SQL Server 2005查询

两个表之间的SQL Server 2005查询,sql,sql-server,Sql,Sql Server,我有两个表(见下文),RM和RP。在下面的RP表中,提供者密钥可以有许多RegionID(密钥)与之关联。我是否可以创建一个查询,允许我返回一个提供者及其所有关联的RegionID(使用RP表),并从RM表中获取RegionID各自的ClientNum RM Table RP Table -------- -------- RegionId key RegionId key

我有两个表(见下文),RM和RP。在下面的RP表中,提供者密钥可以有许多RegionID(密钥)与之关联。我是否可以创建一个查询,允许我返回一个提供者及其所有关联的RegionID(使用RP表),并从RM表中获取RegionID各自的ClientNum

RM Table                      RP Table
--------                      --------
RegionId   key                RegionId   key
..                            Provider   key
..
ClientNum
试试这个:

SELECT P.*, RM.RegionId, RM.ClientNum
FROM Provider P
INNER JOIN RP ON P.ID = RP.Provider
INNER JOIN RM ON RM.RegionId = RP.RegionId
您将获得每个提供者/clientNum关联的一行


[编辑以反映评论]

您尝试过什么吗?这看起来像是一个直接的内部连接。我尝试了以下方法,但它表明区域是无效的对象名。从P.ID=RegionProvider上的提供程序P内部连接RegionProvider中选择P.*,RegionMaster.RegionId为Expr1,RegionMaster.ClientNum为Expr2。R.ID=RegionProvider上的提供程序内部连接区域R为RegionProvider.RegionId内部连接RegionMaster为RegionMaster.RegionId=R.ID