2017-07-18 6 views
0

Je voudrais savoir si, si possible, construire une requête qui lit la même table à partir de 2 partitions différentes.Requête avec partition Oracle

Dans mon scénario, j'ai deux partitions (partition_A et partition_B) et une table « consommer », dans nos jours je fais cette déclaration:

Select id, item 
From partition_A(consume) 
union all 
Select id, item 
From partition_B(consume); 

mais je voudrais obtenir le même résultat quand j'utilise cette déclaration:

Select id, item from consume; 

Est-ce possible?

tks.

+1

Sont-ils vraiment des partitions de base de données? Si c'est le cas, alors la dernière requête devrait fonctionner car le moteur ne devrait pas se préoccuper de la partition qu'il utilise, et devrait choisir parmi les deux et unionner les résultats pour vous. Maintenant, si vous avez juste des tables que vous avez des partitions manuellement ... alors n'utilisez pas et n'utilisez pas correctement les partitions, ou créez une vue avec un synonyme consommant qui remplace le nom de la table schema.consume (bien qu'il ne soit pas sûr que cela vous le permette) pour dupliquer le nom ...) alors peut-être une vue appelée consume_v que vous utilisez à la place. – xQbert

+0

https://stackoverflow.com/questions/19523061/select-from-several-partitions-at-once OU https://stackoverflow.com/questions/24027848/how-to-include-more-than-one-partition -in-single-select-statement-in-oracle – xQbert

Répondre

0

Voulez-vous comme ceci?

Select id, item 
From consume PARTITION partition_A(name of partition) 
union all 
Select id, item 
From consume PARTITION partition_B; 

Peut-être que je n'ai pas compris votre question.