2013-06-28 27 views
-1

我有两个表(见下文),RM和RP。在下面的RP表中,Provider键可以有许多与其关联的RegionIds(键)。我可以创建一个查询,使我能够返回提供者及其所有关联的RegionIds(使用RP表),并从RM表中获取RegionIds对应的ClientNum?SQL Server 2005两个表之间的查询

RM Table      RP Table 
--------      -------- 
RegionId key    RegionId key 
..       Provider key 
.. 
ClientNum 
+2

你尝试过什么?这看起来像是一个简单的内连接。 –

回答

0

试试这个:

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

[编辑,以反映评论]

+0

我尝试了以下,但它说区域是一个无效的对象名称。 SELECT P. *,RegionMaster.RegionId AS表达式1,RegionMaster.ClientNum AS EXPR2 FROM提供者P INNER JOIN RegionProvider ON P.ID = RegionProvider.Provider INNER JOIN地区R ON R.ID = RegionProvider.RegionId INNER JOIN RegionMaster ON RegionMaster.RegionId = R.ID – joshdeco