Voici ma question:Oracle manquant Parenthèse
SELECT * FROM Auta WHERE SUBSTR(spz, 1, 2) =
(SELECT SUBSTR(spz, 1, 2) FROM Auta WHERE typ = 'BMW' AND specifikacia_typu = 'Z1' LIMIT 1);
Et quand je le lance je reçois cette erreur:
ORA-00907: missing right parenthesis
Je suis un peu désespéré, je l'ai déjà essayé d'ajouter parenthèses partout dans la requête et je reçois toujours l'erreur? Il y a 3 parenthèses à gauche et 3 à droite dans la requête, donc tout devrait bien se passer.
vous remercie. Je suis nouveau à Oracle, je suis habitué à MySQL et PostgreSQL :) –
Vous devez faire attention avec la syntaxe "ROWNUM = 1". Je ne sais pas si cela fonctionnera dans ce scénario ou non, mais l'enregistrement renvoyé par la sous-requête est indéterminé, c'est-à-dire que vous pouvez obtenir différents enregistrements renvoyés chaque fois que vous exécutez la requête. Si vous voulez un retour cohérent, enveloppez la sous-requête dans une autre sous-requête avec un "ordre par". –
@Nick: le résultat de la LIMIT 1 d'origine serait également indéterminé. Il n'y a pas de commande de toute façon, donc j'ai supposé que n'importe quelle rangée serait ok. –