2017-03-03 22 views
-3

私は3つのテーブルを持っています。この状況に基づいてcardNumberと対応するグループを表示する方法。私はビューを作成して、カード番号とそれが属するグループを見ることができます。複数のテーブルのMySQL結合カラム

**1.ClientCards:** 
1.1cardID 
1.2cardNumber 
1.2relCardTypeID - foreign key of 2.1cardTypeID 

**2.cardTypes:** 
2.1cardTypeID - foreign key of 3.1groupID 
2.2relParrentID 
2.2cardTypeName 

**3.cardGroups:** 
3.1groupID 
3.1groupName 
+3

StackOverflowの中で、それに関連する多くの質問があります...より良い検索を最初にそれが利用できない場合はここに質問を投稿してください。 –

答えて

0

はrelParrentIDとして、あなたのマッピングされた間違ったが、3.1グループID

の外部キーである必要がありホープは、これを試してみてください:

SELECT cc.cardNumber, cg.groupName 
FROM ClientCards cc 
INNER JOIN cardTypes ct ON cc.relCardTypeID = ct.cardTypeID 
INNER JOIN cardgroups cg ON ct.relParrentID = cg.groupID 
+0

はいそれは私が間違ってマップされています –

+0

このクエリがあなたのために働くことを願って –

+0

はいそれはなぜ内部の結合を使用し、 –

0
VIEW `card_groups` AS 
SELECT 
    `c`.`cardNumber` AS `cardNumber`, 
    `g`.`groupName` AS `groupName`, 
    `t`.`cardTypeName` AS `cardTypeName` 
FROM 
    ((`s2_1_cards` `c` 
    LEFT JOIN `fxml4_4_card_types` `t` ON ((`c`.`relCardTypeID` = `t`.`cardTypeID`))) 
    LEFT JOIN `fxml4_3_groups` `g` ON ((`g`.`groupID` = `t`.`relParrentID`))) 
+0

コードは次のようになります。 –

関連する問題