2015-12-17 31 views
-3

如何查詢多個表中的數據。
例子:

如何查詢多個表中的sql數據

我想在一個單一的查詢main_id 1.
基本上品牌,類別,型號和SN的所有信息。

MAIN_TABLE

id brand category model sn 
1....1....2........1....1 
2....2....1........3....2 
3....2....4........5....3 

brand_table

id....name....main_fk 
1....Apple....1 
2....Sony.....3 

Category_table

id....name.........main_fk 
1....Electronics...1 
2....Furniture.....4 

Model_table

id....name....main_fk 
1....Iphone5..1 
2....GoPro3...2 

SN_table

id....name....main_fk 
1....SN1......1 
2....SN2......2 
+2

挑釁你需要在PK和FK的基礎上加入表格。 –

回答

1

查詢:

SELECT bt.name as brand, ct.name as category, mt.name as model, sn.name as sn 
FROM main_tbl as maint 
INNER JOIN brand_table as bt ON bt.main_fk = maint.id 
INNER JOIN category_table as ct ON ct.main_fk = maint.id 
INNER JOIN model_table as mt ON mt.main_fk = maint.id 
INNER JOIN SN_table as sn ON sn.main_fk = maint.id 

欲瞭解更多信息有關INNER JOININNER JOIN

+0

你從哪裏得到bt.name?這是你剛創建的新變量嗎? – vileharp

+0

你可以使表 –

+0

的別名你試過這個查詢嗎? ** bt ** in'bt.name'是**別名brand_table ** –