Quelqu'un peut-il donner un exemple d'utilisation de la fonction de table parallèle dans oracle pl/sql. Nous devons lancer des requêtes massives pendant 15 ans et combiner le résultat.fonction pipelined
SELECT *
FROM Table(TableFunction(cursor(SELECT * FROM year_table)))
... est ce que nous voulons efficacement. La sélection la plus interne donnera toutes les années, et la fonction table prendra chaque année et exécutera une requête massive et retournera une collection. Le problème que nous avons est que toutes les années sont alimentées par une fonction de table, nous préférons que la fonction de table soit appelée en parallèle pour chaque année. Nous avons essayé toutes sortes de partitionnement par hachage et gamme et cela n'a pas aidé.
En outre, pouvons-nous supprimer le mot-clé PIPELINED de la déclaration de fonction? parce que nous n'effectuons aucune transformation et n'avons besoin que de l'agrégat du resultset.
Pouvez-vous décrire ce que vous essayez d'atteindre et pourquoi vous Vous pensez avoir besoin d'une fonction de pipeline? À l'heure actuelle, il semble que vous deviez exécuter une requête pour chaque année. –
Même si nous exécutons une requête par an, nous avons besoin que cela se produise en parallèle pour toutes les périodes de l'année. S'il y a une meilleure option que d'utiliser pipelining parallèle s'il vous plaît suggérer. – Prakash