> On 1/5/20, Keith Medcalf <kmedc...@dessus.com> wrote: >> >> Hrm. Inconsistent/incorrect results. Consider: >> >> create table a(id integer primary key, a); >> insert into a values (1,1), (2,1), (3,1); >> create table b(id integer primary key, b); >> insert into b values (1,2), (3,2), (4,2); >> create table c(id integer primary key, c); >> insert into c values (1,3), (4,3), (5,3); >> >> select * from a, b, c using (id); -- very strange result >> >> id a id b c >> ---------- ---------- ---------- ---------- ---------- >> 1 1 1 2 3 >> 1 1 3 2 3 >> 1 1 4 2 3 > > PostgreSQL and MySQL process the query as follows: > > SELECT * FROM a, (b JOIN c USING(id)); > > SQLite processes the query like this: > > SELECT * FROM (a,b) JOIN c USING (id); > > I don't know which is correct. Perhaps the result is undefined. > > Note that both MySQL and SQLite do allow you to use parentheses, as > shown in my examples, to define the order of evaluation. PostgreSQL > does not, sadly. > > MS-SQL does not (as far as I can tell) support the USING syntax on a join. > > -- > D. Richard Hipp > d...@sqlite.org
Ahh. More to learn. Thank you for the use of parentheses, I will have to check my queries for that. i did manage to get the query working by grouping on artists.artistid. -- Amer Neely _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users