sql >> Database >  >> RDS >> Oracle

Ongeldige id-SQL

Het probleem is dat je JOIN's aan het mixen bent. Je hebt zowel impliciete als expliciete joins. De expliciete JOIN-syntaxis met de ON-clausule heeft een hogere prioriteit boven de impliciete join met de komma's. Als resultaat is de alias voor de plant en de offerte tabellen zijn niet beschikbaar in de ON-clausule. Probeer overal hetzelfde JOIN-type te gebruiken:

SELECT p.plantnaam, o.levcode, o.offerteprijs
FROM 
(
  SELECT plantcode , MIN(offerteprijs) AS offprijs 
  FROM offerte
  GROUP BY plantcode
) s
INNER JOIN plant p
   ON s.plantcode = p.plantcode
INNER JOIN offerte o
   ON s.offprijs = o.offerteprijs
ORDER BY p.plantnaam, l.levcode



  1. Oracle reguliere expressies. Gevaarlijk bereik

  2. Datumbereiken vergelijken

  3. Query om unieke of primaire sleutel uit MYsql-tabel te verwijderen

  4. Tel het aantal records dat door groep is geretourneerd door