我有一個有三個表的關係數據庫。第一個containts id與第二個有關。第二個包含與第三個相關的id。第三個包含我之後的結果。mysql - 查詢三個表
是否有可能使用單個查詢來查詢第一個表中的id,該表中給出了與第三個表有關的所有結果?
對不起,我是mySQL的新手。
我有一個有三個表的關係數據庫。第一個containts id與第二個有關。第二個包含與第三個相關的id。第三個包含我之後的結果。mysql - 查詢三個表
是否有可能使用單個查詢來查詢第一個表中的id,該表中給出了與第三個表有關的所有結果?
對不起,我是mySQL的新手。
試試這個
select * from table1 t1
join table2 t2 on t1.t2ref = t2.id
join table3 t3 on t2.t3ref = t3.id
添加where子句中的表1
where t1.field = 'value'
使用JOIN命令搜索特定的行鏈接你的表到oneantother。
此外,我建議由基思布朗this tutorial。
你想做一個join。關於這個和various ways有很多tutorials這樣做。
是
SELECT t3.*
FROM t1, t2, t3
WHERE t1.id = t2.id
AND t2.otherid = t3.id
AND t1.id = XXXX
要使用一個連接:
SELECT `t3`.`id`
FROM `table3` `t3`
LEFT JOIN `table2` `t2`
ON `t3`.`foreign_id` = `t2`.`id`
LEFT JOIN `table1` `t1`
ON `t2`.`foreign_id` = `t1`.`id`
WHERE `t1`.`id` = 'some_id'
如果你給一個表結構,我們可以給你更具體的答案。 – CSharpAtl 2009-11-11 15:36:20