左加入mysql问题

时间:2012-02-17 15:42:05

标签: mysql sql relational-database entity-relationship erd

您好我有2个看起来像这样的表,

enter image description here

我想要的是获取类别的类别和部分标题,mySQL看起来像这样,

SELECT `categories`.`category_id`, 
       `categories`.`category_title`, 
       `categories`.`category_created`, 
       `section`.`section_id`, 
       `section`.`section_title`, 
       `categories`.`parent_section` 
 FROM (`categories`) 
 LEFT JOIN `section` 
 ON `section`.`section_id` = `categories`.`category_id`

但是,我要回来的只是类别和部分的列表,而不是类别列表及其部分。我做错了什么?

3 个答案:

答案 0 :(得分:2)

如果您想要父节,那么您的连接条件应该在该列上:

SELECT `categories`.`category_id`, 
       `categories`.`category_title`, 
       `categories`.`category_created`, 
       `section`.`section_id`, 
       `section`.`section_title`, 
       `categories`.`parent_section` 
 FROM (`categories`) 
 LEFT JOIN `section` 
 ON `section`.`section_id` = `categories`.`parent_section`

答案 1 :(得分:0)

我认为应该是:

SELECT `categories`.`category_id`, 
       `categories`.`category_title`, 
       `categories`.`category_created`, 
       `section`.`section_id`, 
       `section`.`section_title`, 
       `categories`.`parent_section` 
 FROM (`categories`) 
 LEFT JOIN `section` 
 ON `section`.`section_id` = `categories`.`parent_section`

答案 2 :(得分:0)

... 
LEFT JOIN section S ON S.section_id = categories.parent_section;