SQLITE 中的两个递归选择联合

TWO RECURSIVE SELECTS UNION IN SQLITE

我想问一下,如何将这两个递归SELECT 联合到一个结果集中。谢谢回答

WITH sub_tree (Item_id,Item_name,Item_fyz,Item_fyz_hodnotaID)
                     AS
                     (Select A.id,A.name,A.fyz1_x_id,A.fyz_hodnota_id
                     from fyz_hodnota AS A
                     where A.id = 29
                     UNION ALL
                     SELECT BF.id, BF.name,BF.fyz1_x_id, BF.fyz_hodnota_id
                     from fyz_hodnota AS BF
                    inner join sub_tree st on  st.Item_id = BF.fyz_hodnota_id)
                    SELECT DISTINCT * from sub_tree

WITH sub_tree (Item_id,Item_name,Item_fyz,Item_fyz_hodnotaID)
                     AS
                     (Select A.id,A.name,A.fyz1_x_id,A.fyz_hodnota_id
                     from fyz_hodnota AS A
                     where A.id=27
                     UNION ALL
                     SELECT BF.id, BF.name,BF.fyz1_x_id, BF.fyz_hodnota_id
                     from fyz_hodnota BF
                     inner join sub_tree st on st.Item_fyz_hodnotaID = BF.id)
                     SELECT * from sub_tree

在同一 WITH 子句下声明 2 个 CTE 并应用 UNION:

WITH 
sub_tree1(Item_id,Item_name,Item_fyz,Item_fyz_hodnotaID) AS (
  Select A.id,A.name,A.fyz1_x_id,A.fyz_hodnota_id 
  from fyz_hodnota AS A where A.id = 29 
  UNION ALL 
  SELECT BF.id, BF.name,BF.fyz1_x_id, BF.fyz_hodnota_id 
  from fyz_hodnota AS BF inner join sub_tree1 st 
  on st.Item_id = BF.fyz_hodnota_id
),
sub_tree2(Item_id,Item_name,Item_fyz,Item_fyz_hodnotaID) AS (
  Select A.id,A.name,A.fyz1_x_id,A.fyz_hodnota_id 
  from fyz_hodnota AS A 
  where A.id=27 
  UNION ALL 
  SELECT BF.id, BF.name,BF.fyz1_x_id, BF.fyz_hodnota_id 
  from fyz_hodnota BF inner join sub_tree2 st 
  on st.Item_fyz_hodnotaID = BF.id
)
SELECT DISTINCT * from sub_tree1
UNION ALL
SELECT * from sub_tree2