2012-07-09 42 views
1

我將如何編寫一個SQL語句來提取TEMPLATE_NAME(模板)和所有AREA_NAMEs(TEMPLATE_AREAS)給出以下表中一個PAGE_ID:MySQL的多個表中選擇了3個表

enter image description here

抱歉,如果這很愚蠢。我在這方面很新穎。

回答

2
select t.TEMPLATE_NAME, a.AREA_NAME 
from page_versions p 
inner join templates t on t.template_id = p.template_id 
inner join template_areas a on a.template_id = t.template_id 
where p.page_id = 123 
+0

爲t A和P表名? – Will 2012-07-09 11:02:03

+0

它是表名的別名。這樣你可以保存輸入:) – 2012-07-09 11:02:42

1
SELECT T.TEMPLATE_NAME, A.AREA_NAME 
FROM PAGE_VERSIONS P 
LEFT JOIN TEMPLATES T ON T.TEMPLATE_ID = P.TEMPLATE_ID 
LEFT JOIN TEMPLATE_AREAS A ON A.TEMPLATE_ID = P.TEMPLATE_ID 
WHERE P.PAGE_ID = yourPageId; 
+0

是t和p的表名? – Will 2012-07-09 11:02:30

+0

各自的表別名。如果你願意,你可以改變它。 – manurajhada 2012-07-09 11:06:52