再帰処理の深さによる最終結果を順序付けすることによって、BFS結果をシミュレーションできます。一例として次のビュー定義を考えます。
CREATE RECURSIVE VIEW reachable_from (destin, cost, depth) AS ( SELECT root.destin, root.cost, 0 AS depth FROM flights AS root WHERE root.source = 'paris' UNION ALL SELECT result.destin, seed.cost+result.cost, seed.depth+1 AS depth FROM reachable_from AS seed, flights AS result WHERE seed.destin = result.source AND depth <= 20);
深さ変数に対してクエリー結果を順序付けすることにより、次のSELECTリクエストはこのビューに対する幅優先レポートを提供します。
SELECT * FROM reachable_from ORDER BY depth;