330 votes

Oracle - instruction Update avec jointure interne

J’ai une requête qui fonctionne très bien en MySQL, je suis en train de faire fonctionner sur oracle, mais obtenir l’erreur suivante

Erreur SQL : ORA-00933 : commande SQL pas correctement terminé 00933. 00000 - « commande SQL pas correctement terminé »

La requête est :

Je serais extrêmement reconnaissant pour toute aide.

456voto

Tony Andrews Points 67363

Cette syntaxe n’est pas valide dans Oracle. Vous pouvez faire ceci :

Ou vous pourriez être en mesure de le faire :

(Cela dépend si la vue inline est considéré comme mis à jour par Oracle).

218voto

Quassnoi Points 191041

ne supporte pas les jointures dans le des déclarations.

Utiliser ceci :

14voto

Morten Anderson Points 1726
 UPDATE ( SELECT t1.value, t2.CODE
          FROM table1 t1
          INNER JOIN table2 t2 ON t1.Value = t2.DESC
          WHERE t1.UPDATETYPE='blah')
 SET t1.Value= t2.CODE

11voto

Josh Points 179

Tony Andrews est correct mais j’avais besoin d’alias pour faire fonctionner, j’ai soumis une modification à la sienne.

Comme ceci

1voto

Janek Bogucki Points 2573

À l’aide de description au lieu de desc pour table2,

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X