2016-04-22 28 views
2

私はちょっとここで失われています。私は1つのテーブルを形成するために2つの結合クエリを結合する必要があります。ここに私が取り組んでいるスクリプトがあります...2つの結合クエリを1つに結合するにはどうすればよいですか?

SELECT Email, Domain, site.SiteID, site.SiteName, Status, LastLogin, up.UPID, up.UPName, trd.TRMCID, trd.TRMCName 
FROM UserDetails as ud 
INNER JOIN SiteLocation as site 
on ud.SiteID = site.SiteID 

INNER JOIN UltimateParent as up 
on ud.UPID = up.UPID 

INNER JOIN TRMCDetails as trd 
on ud.TRMCID = trd.TRMCID 

SELECT SiteID, cinfo.CountryCode, Country 
From Country as cntry 
INNER JOIN CountryInfo as cinfo 
on cntry.CountryCode = cinfo.CountryCode 

INNER JOIN SiteLocation as site2 
on cntry.CountryCode = site2.CountryCode 

私は国を表示する必要がありますが、国コードはSiteIDに接続されています。私は両方に参加するのが難しいです。

これは最初のテーブルでは、

メール・ドメインのSiteID-サイト名・ステータス・lloginを-UPID-UPName-TRMCID-TRMCName

のように見えます。これは、第二のテーブルである

のSiteIDのように見えます-CountryCode-国

私はこの

メール・ドメインのSiteID-サイト名・ステータス・lloginを-UPID-UPName-TRMのように見えるように第三のテーブルを必要としますCID-TRMCName-国

しかし、前に行った2つの結合を組み合わせるのに問題があります。

ご協力いただきありがとうございます。

乾杯!

+0

サンプルデータと望ましい結果は、あなたがしようとしていることを伝えるのに役立ちます。 –

+0

2つのビューhttp://www.w3schools.com/sql/sql_view.aspを使用して、それらを操作してみてください。 –

答えて

1

枚をお試しください:

SELECT 
    Email, 
    Domain, 
    site.SiteID, 
    site.SiteName, 
    Status, 
    LastLogin, 
    up.UPID, 
    up.UPName, 
    trd.TRMCID, 
    trd.TRMCName, 
    cinfo.CountryCode, 
    cntry.Country 
FROM UserDetails as ud 
    INNER JOIN UltimateParent up on ud.UPID = up.UPID 
    INNER JOIN TRMCDetails trd on ud.TRMCID = trd.TRMCID 
    INNER JOIN CountryInfo cinfo on cntry.CountryCode = cinfo.CountryCode 
    INNER JOIN SiteLocation site on ud.SiteID = site.SiteID 
    INNER JOIN Country cntry on cntry.CountryCode = site.CountryCode 
+0

これはうまくいった!今私は自分のミスをどこにしたのか理解しています。ありがとう! – Joshua

+0

大歓迎ジョシュア...! –

0

あなたは、サブクエリとして、あなたの第二のクエリを使用することができます。私はあなたが探しているものをよく理解することを願っています。

SELECT Email, Domain, site.SiteID, site.SiteName, Status, LastLogin, up.UPID, up.UPName, trd.TRMCID, trd.TRMCName, s1.Country 
FROM UserDetails as ud 
INNER JOIN SiteLocation as site 
on ud.SiteID = site.SiteID 
INNER JOIN UltimateParent as up 
on ud.UPID = up.UPID 
INNER JOIN TRMCDetails as trd 
on ud.TRMCID = trd.TRMCID 
INNER JOIN 
(
    SELECT SiteID, cinfo.CountryCode, Country 
    From Country as cntry 
    INNER JOIN CountryInfo as cinfo 
    on cntry.CountryCode = cinfo.CountryCode 

    INNER JOIN SiteLocation as site2 
    on cntry.CountryCode = site2.CountryCode 
) s1 on s1.SiteID = site.SiteID 
+0

これは私が作ろうとしている最初の解決策です。私はちょうどそれがサブクエリーの部分に間違っていた。ちょっと混乱した。ありがとう! – Joshua

+0

うれしかった:)! – CiucaS

関連する問題