【发布时间】:2014-04-07 07:12:06
【问题描述】:
我有一个 ID 列表为 (1,2,3...)
我称之为 $category_ids。现在在同一张表中有一个 super_parent_category 字段,表示该类别在列表中的最高标签。
现在我想检索每个类别 ID 的超级父 ID。
SELECT es_super_parent,es_id
FROM ephpb2b_categories
WHERE es_id IN ({$category_ids})");
上面的查询只返回了 4 条记录,因为 $category_ids 中的所有 id 都属于这 4 个类别。
但我想要 $category_ids 中所有 50 条记录的结果。
所以如果我提供 1、2、4、5、6、6、76, 我应该返回 1,3,4,5,6,66,2,
谢谢
【问题讨论】:
-
问题是它只返回每个父类别一次..所以如果 (3,4,5) 中有 id 并且它们属于一个 parent_category 即 7. 所以它返回 7只有1次
-
我不完全明白你的意思。 $category_ids 是否来自(子)查询?如果是这样,你可以发布它吗?以及两个表的模式。
-
它是一个表。实际上它是一个类别表。主键是 es_id,在同一个表中有一个列 parent_cateogry_id。现在它是一个包含类别和子类别的表。 super_parent_id不等于0的类别是子类别
-
@user3445065 - 请看我的回答。为我工作。如果我误解了你,请详细说明一下。看不出问题。
标签: mysql