Clemens, On Thu, Jun 11, 2015 at 7:01 AM, Clemens Ladisch <clemens at ladisch.de> wrote: > Paul Sanderson wrote: >> I have just been asked whether implicit and explicit join are the same >> >> select text, handle.id from message,handle where handle_id = handle.ROWID; > > This is an implicit *inner* join. > >> SELECT message."text", handle.id FROM message LEFT JOIN handle ON >> message.handle_id = handle."ROWID"; > > This is an explicit *outer* join. > > Outer joins are one reason for using explicit joins, but you want to > compare against a query with the same semantics: > > select text, handle.id from message join handle on handle_id = handle.ROWID;
But even outer joins can be rewritten to use standard semantics: SELECT <smth> FROM <table_names> WHERE <condition>; So what is the purpose to use joins at all? Thank you. > > > Regards, > Clemens > _______________________________________________ > sqlite-users mailing list > sqlite-users at mailinglists.sqlite.org > http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users