簡體   English   中英

如何連接兩個連接在一起的表,每個表都有兩個其他表

[英]How to join two tables that are joined together with two other tables each

我一直在琢磨我的頭腦。 我希望創建一個連接兩個表的查詢,每個表以及另外兩個表作為下面的模式連接。 我知道如何連接表,但此時我阻止了。

SELECT

 recipe_requirement.ID recipe_requirement_ID,
 recipe_requirement.RecipeID recipe_requirement_RecipeID,
 recipe_requirement.MaterialObjectTypeID,
 recipe_requirement_MaterialObjectTypeID,
 recipe_requirement.Quantity recipe_requirement_Quantity,    
 recipe_requirement.IsRegionItemRequired,
 recipe_requirement_IsRegionItemRequired,
 recipe.ID recipe_ID,
 recipe.Name recipe_Name,
 recipe.StartingToolsID recipe_StartingToolsID,
 items.ID items_ID,
 items.ContainerID items_ContainerID,
 items.ObjectTypeID items_ObjectTypeID,
 items.Quantity items_Quantity,
 items.FeatureID items_FeatureID,
 objects_types.ID objects_types_ID,
 objects_types.Name objects_types_Name,
 movable_objects.ID movable_objects_ID,
 movable_objects.ObjectTypeID movable_objects_ObjectTypeID,
 movable_objects.RootContainerID movable_objects_RootContainerID,
 movable_objects.IsComplete movable_objects_IsComplete,
 movable_objects.CustomNameId movable_objects_CustomNameId

FROM recipe_requirement

JOIN movable_objects ON movable_objects.RootContainerID = items.ContainerID

JOIN objects_types ON objects_types.ID = items.ObjectTypeID

JOIN recipe ON recipe.ID = recipe_requirement.RecipeID

JOIN items ON items.ObjectTypeID = recipe_requirement.MaterialObjectTypeID

JOIN objects_types ON objects_types.ID = Recipe_requirement.MaterialObjectTypeID

WHERE movable_objects.IsComplete = 1

表的例子

T1 : recipe_requirement 
ID  1708
RecipeID    498
MaterialObjectTypeID    383
Quantity    1
IsRegionItemRequired    0

T2 - recipe 
ID  498
Name    Beef Stew
StartingToolsID 1054

T3 - items  
ID  5780
ContainerID 844
ObjectTypeID    383
Quantity    357
FeatureID   0

T1在T2上鏈接,值為“498”。 T1在T3上與valude 383“連接。

並在同一時間:

T3 - items  
ID  5780
ContainerID 844
ObjectTypeID    383
Quantity    357
FeatureID   0

T4 - objects_types  
ID  383
Name    Beef

T5 - movable_objects    
ID  728
ObjectTypeID    104
RootContainerID 844
IsComplete  1
CustomNameId    4

T3在T4上鏈接,值為“383”。
T3在T5上鏈接,值為844“。

解決方案我發現:

`SELECT
    recipe_requirement.ID recipe_requirement_ID,
    recipe_requirement.RecipeID recipe_requirement_RecipeID,
    recipe_requirement.MaterialObjectTypeID recipe_requirement_MaterialObjectTypeID,
    recipe_requirement.Quantity recipe_requirement_Quantity,
    recipe_requirement.IsRegionItemRequired recipe_requirement_IsRegionItemRequired,
    recipe.ID recipe_ID,
    recipe.Name recipe_Name,
    recipe.StartingToolsID recipe_StartingToolsID,
    items.ID items_ID,
    items.ContainerID items_ContainerID,
    items.ObjectTypeID items_ObjectTypeID,
    items.Quantity items_Quantity,
    items.FeatureID items_FeatureID,
    objects_types.ID objects_types_ID,
    objects_types.Name objects_types_Name,
    movable_objects.ID movable_objects_ID,
    movable_objects.ObjectTypeID movable_objects_ObjectTypeID,
    movable_objects.RootContainerID movable_objects_RootContainerID,
    movable_objects.IsComplete movable_objects_IsComplete,
    movable_objects.CustomNameId movable_objects_CustomNameId
FROM recipe_requirement
JOIN recipe ON recipe.ID = recipe_requirement.RecipeID
JOIN (items
JOIN objects_types ON objects_types.ID = items.ObjectTypeID
JOIN movable_objects ON movable_objects.RootContainerID = items.ContainerID
) ON items.ObjectTypeID = recipe_requirement.MaterialObjectTypeID`

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM