我有以下两个数据库表:
新闻表:
newsID, topic, categoryID
类别表:
categoryID, title, parentID
我想获取newsID,主题,主要类别的标题,并且只有IF parentID不是0,父类别的标题。 目前我是这样的:
SELECT news.newsID, news.topic, category.title
FROM news
LEFT JOIN category
ON news.categoryID = category.categoryID
WHERE news.newsID = 1
如果可用,我仍然缺少父母标题。获得它的最佳表现方式是什么(如果有的话)?
由于
答案 0 :(得分:2)
假设categoryID
表上有news
列:
SELECT n.newsID, n.topic, c.title, cp.title as parenttitle
FROM news n
LEFT JOIN category c ON n.categoryID = c.categoryID
LEFT JOIN category cp ON cp.categoryID = c.parentID
WHERE n.newsID = 1
答案 1 :(得分:1)
假设categoryID
表中有一个news
列,并且category
表是一个自引用层次结构,这意味着一个孩子的parentID
引用{ {1}}同一个表中父行的列:
categoryID