2014-04-12 84 views
0

我想讓我的類別的所有孩子,並與內容合併。 意思是我想當我點擊一個類別,顯示類別和子類別的所有內容。 我用CTE,它是:如何在IN子句中使用CTE?

WITH ret AS (SELECT  id, parent 
         FROM  ContentsGroups 
         WHERE  (id = @id) 
         UNION ALL 
         SELECT  t.id, t.parent 
         FROM   ContentsGroups AS t INNER JOIN 
               ret AS r ON t.parent = r.id) 
SELECT  id 
FROM   ret 

如何加入輸出到我的目錄?

當我使用這些:

SELECT title FROM Contents WHERE id IN (WITH ret AS ...) 

我得到的相關條款二 錯誤我如何可以合併條款與我的表? 感謝

回答

2

試試這個

WITH ret AS (SELECT  id, parent 
         FROM  ContentsGroups 
         WHERE  (id = @id) 
         UNION ALL 
         SELECT  t.id, t.parent 
         FROM   ContentsGroups AS t INNER JOIN 
               ret AS r ON t.parent = r.id) 

SELECT title FROM Contents WHERE id IN (SELECT id FROM ret); 
+0

你上面貼的查詢是完整的代碼?你能發佈實際的SQL錯誤嗎? –