> 1) Why do you group on something not an output field? I didn't think > that was allowed.
It is. I am not sure if it has any reasonable use, but it is possible. > 2) LEFT JOIN followed by referencing to a field in the table being NOT > NULL makes the LEFT JOIN in reality become a (inner) JOIN, sometimes > that's OK for optimization, but you haven't mentioned that being the > case here. Maybe my queries are wrong, but my experience has been that LEFT JOIN + IS NOT NULL is very often far faster than an (INNER) JOIN. These days I just use LEFT JOIN + IS NOT NULL everywhere because the speed tends to be good all the time, unlike JOIN (where I may get a good speed in one query and horrible speed in another; incidentally, LEFT JOIN + IS NOT NULL doesn't seem to be any slower than a JOIN on my queries). Josef ------------------------------------ ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Visit http://www.firebirdsql.org and click the Resources item on the main (top) menu. Try Knowledgebase and FAQ links ! Also search the knowledgebases at http://www.ibphoenix.com ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Yahoo! Groups Links <*> To visit your group on the web, go to: http://groups.yahoo.com/group/firebird-support/ <*> Your email settings: Individual Email | Traditional <*> To change settings online go to: http://groups.yahoo.com/group/firebird-support/join (Yahoo! ID required) <*> To change settings via email: firebird-support-dig...@yahoogroups.com firebird-support-fullfeatu...@yahoogroups.com <*> To unsubscribe from this group, send an email to: firebird-support-unsubscr...@yahoogroups.com <*> Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/