我有三个表:categories,content_info,和content。
categories
content_info
content
id
parent
entry_id
cat_id
ID
title
我在网址中有一个名为parent_id的变量,它对应于parent一个类别。我想列出所有属于parentparent_id值类别的帖子(而不是类别)。
例如,假设parent_id值为5。每个帖子可能属于ID为20的类别,但该类别属于父类别(其ID为5)。我想列出所有属于类别的帖子,其parent值等于当前parent_id的值。
有没有一种方法可以通过MySQL联接而不是更改PHP?
这应该做到这一点:
SELECT c.* FROM content JOIN content_info ci ON ci.entry_id=c.id JOIN categories cat ON cat.id=ci.cat_id WHERE cat.parent_id=<parent_id>
这将返回所有content属于父类别的帖子(行)parent_id
parent_id
或带有子查询:
SELECT c.* FROM content JOIN content_info ci ON ci.entry_id=c.id WHERE ci.cat_id IN (SELECT id FROM categories cat WHERE cat.parent_id=<parent_id>)