|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre émérite
![]() Inscription : janvier 2004 Messages : 845 ![]() |
bonjour,
j'aimerais savoir si il est possible et si oui quelle est la syntaxe pour utiliser une table PL/SQL dans la clause IN d'un Select... merci d'avance, PS le tableau PL sera chargé à partir d'un curseur...
__________________
Il est plus facile de voir les signes avant-coureurs après coup que l'inverse ! Yorglaa |
|
|
00
|
|
|
#2 |
![]() Inscription : septembre 2004 Messages : 626 ![]() |
Je n'ai pas de solution mais dans le même genre j'aimerais savoir s'il est possible de faire un truc comme : où c est un curseur, je pense que ca ressemble fortement au probleme de Yorglaa.
J'ai des fonctions stockées qui me renvoient un ref cursor et au lieu de faire une table temporaire dans laquelle je mets tous les identifiants fetchés à partir du curseur, est-il possible d'utiliser directement le contenu du curseur dans une requête ? Laly.
__________________
In the heart of the truly greats, perfection is never achieved but endlessly pursued. Mon article sur les fonctions analytiques d'Oracle (calcul de moyennes mobiles, de quartiles et bien d'autres...) |
|
|
00
|
|
|
#3 | ||||
![]() ![]() ![]() Inscription : mai 2003 Messages : 6 533 ![]() |
Et bien, c'est chaud...
tout ce que je peux faire est de créer une fonction PIPELINED Code :
CREATE TYPE table_char IS TABLE OF VARCHAR2(100) ; Code :
Code :
__________________
Rédacteur Oracle (Oracle ACE) Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche Je ne réponds pas aux questions techniques par MP Blogs: Forms-PL/SQL-J2EE - Forms Java Beans |
||||
|
|
00
|
|
|
#4 |
|
Membre émérite
![]() Inscription : janvier 2004 Messages : 845 ![]() |
Super merci...
je vais essayer ça ...
__________________
Il est plus facile de voir les signes avant-coureurs après coup que l'inverse ! Yorglaa |
|
|
00
|
|
|
#5 |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
Au niveau perf ce sera exactement pareil |
|
|
00
|
|
|
#6 |
![]() ![]() ![]() Inscription : mai 2003 Messages : 6 533 ![]() |
J'imagine que le but est d'alimenter une clause IN() avec n'importe quel curseur passé en argument.
__________________
Rédacteur Oracle (Oracle ACE) Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche Je ne réponds pas aux questions techniques par MP Blogs: Forms-PL/SQL-J2EE - Forms Java Beans |
|
|
00
|
|
|
#7 |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
Et bien, tu peux alimenter une table avec n'importe quel curseur et utiliser un FORALL et une égalité en lieu et place du IN
|
|
|
00
|
|
|
#8 |
![]() ![]() ![]() Inscription : mai 2003 Messages : 6 533 ![]() |
Et bien c'est ce que fait la fonction pipelined.
Il faudrait essayer de lui transmettre directement un pointeur de type REFCURSOR (au lieu du select)
__________________
Rédacteur Oracle (Oracle ACE) Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche Je ne réponds pas aux questions techniques par MP Blogs: Forms-PL/SQL-J2EE - Forms Java Beans |
|
|
00
|
|
|
#9 |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
Ha bon... le pipeline me semble bigrement compliqué par rapport au FORALL c'est pour ça... je pense à la TMA
|
|
|
00
|
|
|
#10 |
|
Membre émérite
![]() Inscription : janvier 2004 Messages : 845 ![]() |
euhhh désolé pour la question basique... mais vous pourriez juste me rappeler la syntaxe du FORALL ?
__________________
Il est plus facile de voir les signes avant-coureurs après coup que l'inverse ! Yorglaa |
|
|
00
|
|
|
#11 |
![]() ![]() ![]() Inscription : mai 2003 Messages : 6 533 ![]() |
c'est expliqué dans l'article : Guide PL/SQL....
__________________
Rédacteur Oracle (Oracle ACE) Guide Oracle ,Guide PL/SQL, Guide Forms 9i/10g, Index de recherche Je ne réponds pas aux questions techniques par MP Blogs: Forms-PL/SQL-J2EE - Forms Java Beans |
|
|
00
|
|
|
#12 | ||||
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
j'ai donné le lien juste au dessus
Code :
Code :
|
||||
|
|
00
|
|
|
#13 |
|
Membre émérite
![]() Inscription : janvier 2004 Messages : 845 ![]() |
oups, pardon à vous deux
je vais aller piocher dans le guide de Sheik et dans les liens à orafrance... désolé encore j'ai réagi trop vite... je je voulais froisser personne !
__________________
Il est plus facile de voir les signes avant-coureurs après coup que l'inverse ! Yorglaa |
|
|
00
|
|
|
#14 |
![]() ![]() Inscription : janvier 2004 Messages : 15 861 ![]() |
Pas de probléme
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com