2016-08-19 8 views
1

をバインドすることはできません私はこれを実行するとき、私は私はこのエラーメッセージ、この要求マルチパート識別子は

SELECT ACC.ID_LIENPARENTE, 
     ACC.ID_VOYAGE, 
     ACC.LI_ACC_NOM, 
     ACC.LI_ACC_PRENOM, 
     ACC.PA_ID_INDICATIF_TEL, 
     ACC.CO_ACC_MEL, 
     ACC.TE_ACC_TELEPHONE, 
     E_PAYS.PA_ID AS PA_ID_INDICATIF_TEL_ACC, 
     E_PAYS.PA_I_INDICATIF AS PA_INDICATIF_TEL_ACC, 
     E_PAYS.PA_L_NOM_LISTE as PA_L_NOM_LISTE_INDICATIF_TEL_ACC 
    FROM 
    dbo.E_ACCOMPAGNANT ACC 
    JOIN E_PAYS ON E_ACCOMPAGNANT.PA_ID_INDICATIF_TEL = E_PAYS.PA_ID 
    INNER JOIN dbo.R_LIEN_PARENTE LIEN_PAR 
    ON 
    ACC.ID_LIENPARENTE = LIEN_PAR.ID_LIENPARENTE 
    WHERE ID_VOYAGE = 10 

を持っています

マルチパート識別子「E_ACCOMPAGNANT.PA_ID_INDICATIF_TEL」することができますが は拘束されません。

あなたがテーブルの別名を定義した場合、あなたは常にをそれを使用する必要が

答えて

4

何が問題です。
juergenで述べたようにあなたが参加している場合は、alias名前を使用する必要があるエイリアスACC

SELECT ACC.ID_LIENPARENTE, 
     ACC.ID_VOYAGE, 
     ACC.LI_ACC_NOM, 
     ACC.LI_ACC_PRENOM, 
     ACC.PA_ID_INDICATIF_TEL, 
     ACC.CO_ACC_MEL, 
     ACC.TE_ACC_TELEPHONE, 
     E_PAYS.PA_ID AS PA_ID_INDICATIF_TEL_ACC, 
     E_PAYS.PA_I_INDICATIF AS PA_INDICATIF_TEL_ACC, 
     E_PAYS.PA_L_NOM_LISTE as PA_L_NOM_LISTE_INDICATIF_TEL_ACC 
    FROM 
    dbo.E_ACCOMPAGNANT ACC 
    JOIN E_PAYS ON ACC.PA_ID_INDICATIF_TEL = E_PAYS.PA_ID 
    INNER JOIN dbo.R_LIEN_PARENTE LIEN_PAR 
    ON 
    ACC.ID_LIENPARENTE = LIEN_PAR.ID_LIENPARENTE 
    WHERE ID_VOYAGE = 10 
2

と交換テーブル。

ここでは、

SELECT ACC.ID_LIENPARENTE, 
    ACC.ID_VOYAGE, 
    ACC.LI_ACC_NOM, 
    ACC.LI_ACC_PRENOM, 
    ACC.PA_ID_INDICATIF_TEL, 
    ACC.CO_ACC_MEL, 
    ACC.TE_ACC_TELEPHONE, 
    E_PAYS.PA_ID AS PA_ID_INDICATIF_TEL_ACC, 
    E_PAYS.PA_I_INDICATIF AS PA_INDICATIF_TEL_ACC, 
    E_PAYS.PA_L_NOM_LISTE as PA_L_NOM_LISTE_INDICATIF_TEL_ACC 
FROM 
dbo.E_ACCOMPAGNANT ACC 
--JOIN E_PAYS ON E_ACCOMPAGNANT.PA_ID_INDICATIF_TEL = E_PAYS.PA_ID // alias not used 
JOIN E_PAYS ON ACC.PA_ID_INDICATIF_TEL = E_PAYS.PA_ID -- need to use alias for query 
INNER JOIN dbo.R_LIEN_PARENTE LIEN_PAR 
ON 
ACC.ID_LIENPARENTE = LIEN_PAR.ID_LIENPARENTE 
WHERE ID_VOYAGE = 10 
を行きます
0

PA_ID_INDICATIF_TELを参照する必要が

JOIN E_PAYS ON E_ACCOMPAGNANT.PA_ID_INDICATIF_TEL = E_PAYS.PA_ID 

JOIN E_PAYS ON ACC.PA_ID_INDICATIF_TEL = E_PAYS.PA_ID 
関連する問題