Thanks Martijn, This is exactly what I am looking for. I'm wondering how easy it is to sit on top of this backend. Does anybody have any stand alone sample code? Is it a library that can be linked or do you need to produce a modified version of the postgres server? Can it be used in shared library form and if so will it support multiple processes using it on the same machine? ---------------------- "Well, in the backend you can do things like open a btree index, setup an ScanKey to indicate which values you want and then keep calling getnext(). If you set your scankey to (col1 >= 'A') it will start at 'A' and go up from there... "