ho les gorets
-> Bon, déjà, les sous-requêtes, il faut toujours qu'elles retournent un MINIMUM de lignes, donc je ne veux voir que des COUNT() dedans.
-> Un UNION sur une donnée calculée, c'est pas une bonne idée, car il fait un distinct implicit. En plus, c'est lent. (ça l'est d'autant plus avec vos "select 1 from" parceque le union final ne retourne qu'une seule ligne, et ça a mis 3 plombes à la trouver...)
Bon, la solution qui marche et qui est rapide :
Code :
- select sum(val)
- from (
- select count(*) val from a
- union all
- select count(*) val from b
- union all
- select count(*) val from c
- union all
- select count(*) val from d
- )
|
Et voilà.
Message édité par Arjuna le 27-07-2005 à 10:57:28