|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre chevronné
![]() ![]() Inscription : juillet 2006 Messages : 1 194 ![]() |
Bonjour.
J'aimerais en joignant deux tables, obtenir le nombre de lignes uniques que j'ai dans ma première table et la valeur minimale d'un champ dans la seconde table. Je pense que ce n'est pas faisable sans sous query mais j'ai un léger doute que vous pouvez peut-être dissiper. Disons : Table1 : a INT, b INT, c BIT (PK : a, b) Table2 : i INT, a INT, b INT, d DATETIME (PK : i FK : a, b). J'aimerais obtenir : Code :
|
||
|
|
00
|
|
|
#2 | ||
|
Membre Expert
![]() ![]() Inscription : janvier 2010 Messages : 1 084 ![]() |
Bonjour
En fait je ne vois pas l’intérêt d'une jointure ici puisque vous n'avez ps besoin de mettre en relation les données des deux tables. Vous voulez le nombre de ligne dans une table d'une part, Le min d'une colonne d'une autre table d'autre part Je ferai quelque chose comme ceci : Code SQL :
|
||
|
|
00
|
|
|
#3 | |||
|
Membre chevronné
![]() ![]() Inscription : juillet 2006 Messages : 1 194 ![]() |
Citation:
Je le modifie d'un poil pour clarifier que je ne suis pas passer à côté de l'évident Code :
|
|||
|
|
00
|
|
|
#4 | ||||
|
Membre Expert
![]() ![]() Inscription : janvier 2010 Messages : 1 084 ![]() |
ok, je me disais aussi que j'avais du passer a coté de quelque chose
reprenons : Je vois bien une solution bidouille à partir de votre requête initiale : Code SQL :
Mais personnellement je ne suis pas un grand adepte de ce genre de bricolage... Sinon il reste possible de modifier la requête que je vous ai donnée pour y ajouter le filtre (sur chacune des deux sous requêtes, avec une jointure ou un EXISTS sur la deuxième...) Pour ma part, je testerais les performances d'une requête de ce type : Code SQL :
Qui, selon vos données/index/sélectivité du filtre/... , pourra vous donner de bons résultats. Il faudra surtout un index sur Table2(a,b,d) |
||||
|
|
00
|
|
|
#5 |
|
Membre chevronné
![]() ![]() Inscription : juillet 2006 Messages : 1 194 ![]() |
J'étais arrivé à cette solution (d'ailleurs, j'avais aussi songé puis écarté l'idée d'une concaténation) mais puisque de toute évidence avec une simple jointure toutes les données nécessaires à l'opération que je souhaite faire sont déjà là, je me disais qu'il y avait peut-être une écriture pour le faire.
Surtout qu'il existe des éléments de language (ou en tout cas des procédures) non documentés, on ne sait jamais. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com