J'ai une requête qui fonctionne comme:plusieurs sous-requêtes lors du regroupement
select table_one.x, sum(table_one.y)
(select foo from table_two where table_one.x = table_two.x) as item_description
from table_one
inner join table_two
on table_one.x = table_two.x
-- where table_2 row has various attributes
group by table_one.x
Le groupement signifie que je besoin d'un sous-sélection pour accéder foo de la table deux. Maintenant, si je veux sélectionner une deuxième colonne de la table deux, y at-il un moyen d'y accéder sans un second sous-select?
La base de données est DB2. Join est plusieurs à un, c'est-à-dire pensez à table_one comme commandes et table_b comme contenant des informations pour l'élément.
la performance ne peut pas être bon pour cela comme il se matérialise t1 t2 avant de se joindre à – kishore
Je ne sais pas DB2 en profondeur, mais Oracle et MS SQL ne matérialise pas la vue entière à condition qu'il y ait un index sur table_one (x). – Quassnoi