0

このエラーを受け取ったときに、他の 2 つの結合テーブルで外部結合を作成しようとしています - 2 つの個別のクエリを作成して機能させる方法がわかりません。サブクエリも機能していないようです。助けていただければ幸いです。以下のクエリでエラーが発生します、ありがとう。

SELECT 
    CardHeader.CardID, CardHeader.CardDescription, CardHeader.GloveSize,     
    CardHeader.GloveDescription, CardDetail.Bin, CardDetail.ItemID, Items.ItemDescription, 
    Items.VCatalogID, CardDetail.ChargeCode, CardDetail.Quantity, Items.Cost, CardColors.ColorID
FROM
    ((Items 
INNER JOIN 
    (CardHeader INNER JOIN CardDetail ON CardHeader.CardID = CardDetail.CardID) ON Items.ItemID = CardDetail.ItemID) 
LEFT JOIN 
    CardColors ON CardDetail.ItemID = CardColors.ItemID) 
INNER JOIN 
    Colors ON CardColors.ColorID = Colors.ID
ORDER BY 
    CardHeader.CardID;

実行する次のことを試しましたが、次のパラメーターを要求します(これはすべきではありません)

CardHeader.ID, MainQry.CardID

SELECT 
    MainQry.ID, MainQry.CardDescription, MainQry.GloveSize, 
    MainQry.GloveDescription, MainQry.Bin, MainQry.ItemID,
    MainQry.ItemDescription, MainQry.VCatalogID, MainQry.ChargeCode, 
    MainQry.Quantity, MainQry.Cost, SubQry.ColorID
FROM
    (SELECT 
         CardHeader.ID, CardHeader.CardDescription, CardHeader.GloveSize, 
         CardHeader.GloveDescription, CardDetail.Bin,
         CardDetail.ItemID, Items.ItemDescription, Items.VCatalogID, 
         CardDetail.ChargeCode, CardDetail.Quantity, Items.Cost 
     FROM 
         Items 
     INNER JOIN 
         (CardHeader 
     INNER JOIN 
         CardDetail ON CardHeader.CardID = CardDetail.CardID) ON Items.ItemID = CardDetail.ItemID
    )  AS MainQry 
LEFT JOIN 
    (SELECT 
         CardColors.ItemID, CardColors.ColorID 
     FROM 
         CardColors 
     INNER JOIN 
         Colors ON CardColors.ColorID = Colors.ID) AS SubQry ON MainQry.ItemID = SubQry.ItemID
ORDER BY 
    MainQry.CardID;
4

1 に答える 1

1

2 番目の SQL ステートメントは、最初のステートメントとエラーを参照することによって訂正できます。エラーは、 と の両方CardHeader.IDMainQry.CardIDパラメータの入力を求めていることです。これは、内側のステートメントにCardHeader.CardIDではなくを含める必要があることを示しています。CardHeader.ID

于 2012-08-03T13:46:28.530 に答える