0
使用子查询的结果,我需要在WordPress安装执行以下MySQL查询:MySQL的:另一个子查询
- 获取类别ID在类别名称为“Oppskrifter”。
- 获取所有这些ID的子类别。
- 获得由此产生的儿童类别的子女(即2.的子女和1.的孙子女)。
我想解决这个使用别名的子查询,但我不能使它的工作,我也不确定这是做到这一点的最佳方式。这是我目前的看法:
SELECT * FROM
(
SELECT term_id AS oppskrifter_id
FROM wp_terms WHERE name = "Oppskrifter"
) AS R1,
(
SELECT * FROM wp_terms AS t
INNER JOIN wp_term_taxonomy AS tt
ON tt.term_id = t.term_id
WHERE tt.taxonomy = "category" AND tt.parent IN (R1)
) AS R2;
第一个子查询工作得很好本身,而是引入了第二个,当它不知道什么R1
尚未,所以我得到的错误ERROR 1054 (42S22): Unknown column 'R1' in 'having clause'
。如果我通过实际查询替换R1
,则我得到错误消息ERROR 1060 (42S21): Duplicate column name 'term_id'
。
我在这里想要做的是在第二个查询中找到孩子(第二点),然后为使用这些结果的孙子们做同样的事情。
我有哪些选择来解决这个问题?做到这一点的正确方式是什么,无论是速度方面还是可读性方面?
'R1'是指多列而你正试图在列集合搜索'tt.parent'列。 – px5x2
你不完全清楚你想达到什么样的结果。它是两个子查询的行集还是只有最后一个?小提琴或虚拟数据的例子将是完美的 –
理想的结果是将两个子查询的行集合在一起,因为我需要从子项到孙子的映射。也就是说,我需要知道哪些孙辈属于“Oppskrifter”类别的哪个孩子。 –