Re: Syntax problem for a newbie

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: "Fred" <frederic(dot)fleche(at)gmail(dot)com>
Cc: pgsql-general(at)postgresql(dot)org
Subject: Re: Syntax problem for a newbie
Date: 2006-05-05 16:49:01
Message-ID: 25985.1146847741@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

"Fred" <frederic(dot)fleche(at)gmail(dot)com> writes:
> I have a syntax problem but I don't find the clue.
> Actually I adapt an mySQL query to a postgreSQL but I got a message
> error that I can't interpret.

> SELECT g.id, t1.name, substring(g.path, 1, (6*(-1+l.id)) + 5) as
> subpath,l.id-1 as level
> FROM graph_path g
> INNER JOIN term AS t1
> INNER JOIN term AS t2 ON (t2.id = g.term2_id)
> INNER JOIN levels l ON (substring(path, 1+(6*(-1+l.id)), 5) = t1.id
> AND g.distance+1 >= l.id)
> WHERE t2.name = 'blood_coagulation' and g.term1_id=1
> ORDER BY g.id, subpath;

You're short an ON condition: there has to be an ON for every JOIN.
Or turn the first INNER JOIN into a CROSS JOIN, so it doesn't need an ON.

Does MySQL really accept that as-is? (Standards compliance was never
their strong point :-()

regards, tom lane

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Tony Caduto 2006-05-05 16:53:48 Re: Syntax problem for a newbie
Previous Message Stephan Szabo 2006-05-05 15:50:51 Re: ERROR: more than one row returned by a subquery used