返回 CodeWhale
forget_closure.sql
根目录 / crates / memory / src / sql / forget_closure.sql
1 WITH RECURSIVE edges(parent,child) AS (
2 SELECT parent_id,child_id FROM lineage
3 UNION SELECT old_id,new_id FROM replacements
4 UNION SELECT new_id,old_id FROM replacements
5 ), forgotten(id) AS (
6 SELECT :id
7 UNION SELECT e.child FROM edges e JOIN forgotten f ON e.parent=f.id
8 )
9 SELECT id FROM forgotten ORDER BY id
10
10 lines SQL