Dear sqlite users and developers,

my question is why doesn't sqlite support recursive selects yet... is there
a practical reason behind it perhaps?

Many projects that I dealt with have a sort of parent child relationship in
some of their tables. There is a lot of overhead in resolving these parent
child path queries remotely and although many ideas have come to the list of
solving these issues one way or the other, it is not always permitted by
clients/customers to change the structure of existing databases in order to
solve these problems. And client side caching is not always an option in
case of huge databases. recursive selects seem to be the solution in many of
these cases. DB2 has a very nice solution with the introduction of the WITH
statement ie:

with t1 (parent,child) as (select * from table2 where child in
(select parent from table1) union all select t2.child,t2.parent
from table2 as t2, t1 where t2.child = t1.child)
select * from t1

although the word "with" as a keyword seems a bit weird to me, but then
again usable in sp's or view for that matter.

Haven't used sqlite for a while I found that foreign key constraints are
finally implemented, however this was already possible via triggers and I
have used them in some projects a few years ago, so in my humble opinion not
the most necessary feature to implement.

Another idea is (i haven't found anyone suggesting it, so maybe its not
possible..) to insert code in the VM directly to achieve the same result.
But maybe the VM is not flexible enough to implement structures like these?

Anyway, what i'm curious at is the reason behind not implementing recursive
selects and since it is not on any sqlite roadmap or todo list either, if
there is a plan to implement it in the future perhaps? What time line are we
looking at if that is the case...

Regards,
Johan
_______________________________________________
sqlite-users mailing list
[email protected]
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to