私はいくつかのSQLを処理するために必要なスキーマを継承しました。ジャンパーの色やサイズのバリエーションなどの製品バリエーションを表示することです。スキーマは、製品の1台がありますテーブルに複数回LINQを発行するとき
表tbl_Product
[ProductID] [int],
[Quantity] [int],
[Title] [nvarchar](500),
[Description] [varchar](max),
[Price] [money]
等...
バリエーションをリンクテーブルなどの別のテーブルを
表tbl_ProductVariation
[ProductVariationID] [int],
[ProductID] [int] ,
[VariationID] [int]
と変化テーブル
表tbl_Variation
[VariationID] [int],
[VariationTypeID] [int] NOT NULL,
[USTitle] [nvarchar](150) NULL,
[UKTitle] [nvarchar](150) NULL
ので、変動値は、なぜ、このクエリが失敗しないようにvariationtypeidに
に応じて色又はサイズを含むことができます?
SELECT [t4].[ProductVariationID], [t5].[UKTitle] AS [Size],
[t6].[UKTitle] AS [Colour], [t0].[Title]
FROM [dbo].[tbl_Product] AS [t0]
INNER JOIN [dbo].[tbl_ProductCategory] AS [t1]
ON [t0].[ProductID] = [t1].[ProductID]
INNER JOIN [dbo].[vw_ProductImage] AS [t2]
ON [t0].[ProductID] = [t2].[ProductID]
INNER JOIN [dbo].[tbl_Brand] AS [t3]
ON [t0].[BrandID] = [t3].[BrandID]
INNER JOIN [dbo].[tbl_ProductVariation] AS [t4]
ON [t0].[ProductID] = [t4].[ProductID]
LEFT OUTER JOIN [dbo].[tbl_Variation] AS [t5]
ON [t5].[VariationID] = [t4].[VariationID]
LEFT OUTER JOIN [dbo].[tbl_Variation] AS [t6]
ON [t6].[VariationID] = [t4].[VariationID]
INNER JOIN [dbo].[tbl_Category] AS [t7]
ON [t1].[CategoryID] = [t7].[CategoryID]
WHERE ([t5].[VariationTypeID] IN(2))
AND ([t6].[VariationTypeID] IN(1))
どのように「失敗するのですか?エラーメッセージ? –