我想從我的分類表使用我創建的父路徑得到結果。 當我使用手動數據啓動WHERE IN請求時,它可以很好地工作。 當我與子查詢動態地嘗試相同的請求,我只有一個結果,而不是4預期。 我不明白爲什麼,你能幫我嗎?在哪裏子查詢不工作如預期
http://sqlfiddle.com/#!2/88b68/6
/*Working query*/
SELECT t.id_categorie FROM t
WHERE t.id_categorie IN (1396,1399,1403,1412)
/*Not working by subquery ??*/
SELECT cat.id_categorie FROM t as cat
WHERE
cat.id_categorie IN (SELECT REPLACE(t.path,'.',',') FROM t WHERE t.id_categorie = 1412)
由於通過提前
問候,
這是因爲't.path'是'varchar'列而不是'INT'。 – Rahul
查看FIND_IN_SET(),雖然這種問題可能是設計不佳的症狀。也就是說,物化路徑是一種可接受的策略。 – Strawberry