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」類別的哪個孩子。 –