SR> I'm hoping that someone can point me in the right direction here. SR> Given 2 secondary indices on an indexed btree is it at all possible to SR> create/use a derived index which is the union of the 2 created indices SR> without requiring the explicit creation of a 3rd index
i'm not sure what do you mean, but subject suggests that you just want to walk through both indices simultaneously as if they were just one sorted index. if so, you can use lower-level cursor APIs, without creating anything on database level. something like that: (let ((c1 (ele:make-inverted-cursor 'foo 'bar)) (c2 (ele:make-inverted-cursor 'foo 'baz))) (ele:cursor-first c1) (ele:cursor-first c2) (loop for cc = (whichever-less c1 c2) while cc for (exists k v) = (multiple-value-list (ele:cursor-current cc)) while exists do (something-with k v) do (ele:cursor-next cc)) (ele:cursor-close c1) ; it's better to put this in unwind protect (ele:cursor-close c2)) actually i've made some macro to do this in easier (and more general) way, but it's somewhat ugly so i'm not sure if i want to share it :) _______________________________________________ elephant-devel site list elephant-devel@common-lisp.net http://common-lisp.net/mailman/listinfo/elephant-devel