2017-06-23 13 views
0

誰かを助けることができるのだろうかと思います。私は、以下のクエリを実行しようとすると複数の結合を持つ 'on節'の不明な列

Error Code: 1054. Unknown column 'sub_claims_volume.Claims_Volume' in 'on clause'

私はエラーを返す取得しています。

私はpi_loadings_claims_volumeテーブルへの結合と関係があると思います。

私はサブクエリからテーブルを生成しており、その場合にはジョインに問題はなく、正しい結果が返されました。 joinpi_loadings_claims_volumeテーブルを用いて行われる場合、sub_claims_volumeテーブルエイリアスが知られていないため

SELECT bdx_pi_policy_accounts.policyid, 
    bdx_pi_policy_accounts.renewal, 
    sub_claims_volume.claims_volume, 
    pi_loadings_claims_volume.loading 
FROM bdx_pi_policy_accounts 
    LEFT JOIN pi_loadings_claims_volume 
    ON sub_claims_volume.claims_volume = 
    pi_loadings_claims_volume.claims_per_year 

LEFT JOIN (SELECT pi_claims.policyid, 
    RIGHT(pi_claims.policykey, 1) AS Renewal, 
    Count(pi_claims.claimid)  AS Claims_Volume 
    FROM pi_claims 
    GROUP BY pi_claims.policyid, 
    pi_claims.policykey) AS sub_claims_volume 
    ON bdx_pi_policy_accounts.policyid = sub_claims_volume.policyid 
    AND bdx_pi_policy_accounts.renewal = sub_claims_volume.renewal 

答えて

1

それが不明な列のエラーを示している理由である(Iように)、したがっては、クエリは、Claims_Volume列を認識することができません。例えば、それを修正する必要があります(つまりjoin条件の前にsub_claims_volumeクエリを置く)joinでテーブルを再配置

SELECT bdx_pi_policy_accounts.policyid, 
    bdx_pi_policy_accounts.renewal, 
    sub_claims_volume.claims_volume, 
    pi_loadings_claims_volume.loading 
FROM bdx_pi_policy_accounts 
LEFT JOIN (SELECT pi_claims.policyid, 
    RIGHT(pi_claims.policykey, 1) AS Renewal, 
    Count(pi_claims.claimid)  AS claims_volume 
    FROM pi_claims 
    GROUP BY pi_claims.policyid, 
    pi_claims.policykey) sub_claims_volume 
    ON bdx_pi_policy_accounts.policyid = sub_claims_volume.policyid 
    AND bdx_pi_policy_accounts.renewal = sub_claims_volume.renewal 
LEFT JOIN pi_loadings_claims_volume 
    ON sub_claims_volume.claims_volume = 
    pi_loadings_claims_volume.claims_per_year 
+0

ダルシャンは、どうもありがとうございました。私は結合の再配置を考慮していませんでした。これは完全に機能します。宜しくお願いします。 Dan – dsw

+0

あなたの変更内容と理由を説明して、回答に文脈を追加してください。これはあなたの答えが将来の訪問者に役立つようになります。 – miken32

+0

@ miken32がコンテキストを追加しました –

関連する問題