Last two questions first... no and no.... it's just the way DBMSs work, they store the info in the manner they see as being the most optimal for retrieval.... you could create a clustered index on the identifying field (just don't make it a text field, use a numeric field if you can help it)... that will physically group like records together.... that's about as close as you are going to get for that. It does slow down data inserts though (which may or may not be noticable)... so be careful. But it will significantly increase searches, especially if the clustered field is also the field you do a lot of look ups on.

Something else you can do, is jsut simply adding an index will speed up searches.

I had an idea for structure, but then realized it leads to repeated data, which isn't necessarily a good thing... so I'll rethink it first..

-tg