"Warrio" a écrit dans le message de news:466026a5$0$3806$
Bonjour
Pourriez-vous me dire quel est le plus rapide entre GROUP BY et DISTINCT? et pourquoi?
Hum, il me semble surtout que la finalité n'est pas la même : GROUP BY => Sert essentiellement à des opérations de comptage ou de sommation.
DISTINCT => Sert à écarter les doublons.
Warrio
Salut Michel, Merci pour ta réponse!
Je suis d'accord avec ce que tu dis! mais dans le cas suivant:
"SELECT DINSTINC Field1 FROM Table1" et "SELECT Field1 FROM Table1 GROUP BY Field1"
même si je dois utiliser dans ce cas DISTINCT, je peux également utiliser GROUP BY. car le résultat sera le même. et il n'y a que le résultat et l'efficacité qui m'importent.
ma question était de savoir dans un tel cas, quel sera le plus rapide, même si éthiquement, moralement, politiquement.... ce n'est pas correct.?
"Michel_D" a écrit dans le message de news: f3pbqa$l9p$
"Warrio" a écrit dans le message de news:466026a5$0$3806$
Bonjour
Pourriez-vous me dire quel est le plus rapide entre GROUP BY et DISTINCT? et pourquoi?
Hum, il me semble surtout que la finalité n'est pas la même : GROUP BY => Sert essentiellement à des opérations de comptage ou de sommation.
DISTINCT => Sert à écarter les doublons.
Salut Michel,
Merci pour ta réponse!
Je suis d'accord avec ce que tu dis!
mais dans le cas suivant:
"SELECT DINSTINC Field1 FROM Table1" et
"SELECT Field1 FROM Table1 GROUP BY Field1"
même si je dois utiliser dans ce cas DISTINCT, je peux également utiliser
GROUP BY. car le résultat sera le même. et il n'y a que le résultat et
l'efficacité qui m'importent.
ma question était de savoir dans un tel cas, quel sera le plus rapide, même
si éthiquement, moralement, politiquement.... ce n'est pas correct.?
"Michel_D" <michel.NOSPAM@orange-ft.com.invalid> a écrit dans le message de
news: f3pbqa$l9p$1@news.rd.francetelecom.fr...
"Warrio" <warrio@hotmail.com> a écrit dans le message de
news:466026a5$0$3806$5402220f@news.sunrise.ch...
Bonjour
Pourriez-vous me dire quel est le plus rapide entre GROUP BY et DISTINCT?
et
pourquoi?
Hum, il me semble surtout que la finalité n'est pas la même :
GROUP BY => Sert essentiellement à des opérations de comptage
ou de sommation.
Je suis d'accord avec ce que tu dis! mais dans le cas suivant:
"SELECT DINSTINC Field1 FROM Table1" et "SELECT Field1 FROM Table1 GROUP BY Field1"
même si je dois utiliser dans ce cas DISTINCT, je peux également utiliser GROUP BY. car le résultat sera le même. et il n'y a que le résultat et l'efficacité qui m'importent.
ma question était de savoir dans un tel cas, quel sera le plus rapide, même si éthiquement, moralement, politiquement.... ce n'est pas correct.?
"Michel_D" a écrit dans le message de news: f3pbqa$l9p$
"Warrio" a écrit dans le message de news:466026a5$0$3806$
Bonjour
Pourriez-vous me dire quel est le plus rapide entre GROUP BY et DISTINCT? et pourquoi?
Hum, il me semble surtout que la finalité n'est pas la même : GROUP BY => Sert essentiellement à des opérations de comptage ou de sommation.
DISTINCT => Sert à écarter les doublons.
Warrio
Ci-dessous se trouve une réponse que j'ai eu, qui peut interesser qqun! A+ :) =============== GROUP BY will NOT be slower, since it forces you to specify which field(s) you really need to define 'unique-ness', it will be faster, or take the same time, at worst, than DISTINCT, but note that GROUP BY is more rigid than DISTINCT, since any expression in the SELECT clause must then be either in the GROUP BY, either aggregated.
SELECT DISTINCT lastName, firstName, telNumber FROM somewhere
will be slower than
SELECT lastName, firstName, MAX(telNumber) FROM somewhere GROUP BY lastName, firstName
since not only distinct will uselessly compare the telNumber field, but it will also reserve memory to keep it as 'group identifier'; the second solution neither does the comparison, neither has to reserve that extra memory.
Vanderghast, Access MVP
"Michel_D" a écrit dans le message de news: f3pbqa$l9p$
"Warrio" a écrit dans le message de news:466026a5$0$3806$
Bonjour
Pourriez-vous me dire quel est le plus rapide entre GROUP BY et DISTINCT? et pourquoi?
Hum, il me semble surtout que la finalité n'est pas la même : GROUP BY => Sert essentiellement à des opérations de comptage ou de sommation.
DISTINCT => Sert à écarter les doublons.
Ci-dessous se trouve une réponse que j'ai eu, qui peut interesser qqun! A+
:)
=============== GROUP BY will NOT be slower, since it forces you to specify which field(s)
you really need to define 'unique-ness', it will be faster, or take the same
time, at worst, than DISTINCT, but note that GROUP BY is more rigid than
DISTINCT, since any expression in the SELECT clause must then be either in
the GROUP BY, either aggregated.
SELECT DISTINCT lastName, firstName, telNumber FROM somewhere
will be slower than
SELECT lastName, firstName, MAX(telNumber) FROM somewhere GROUP BY lastName,
firstName
since not only distinct will uselessly compare the telNumber field, but it
will also reserve memory to keep it as 'group identifier'; the second
solution neither does the comparison, neither has to reserve that extra
memory.
Vanderghast, Access MVP
"Michel_D" <michel.NOSPAM@orange-ft.com.invalid> a écrit dans le message de
news: f3pbqa$l9p$1@news.rd.francetelecom.fr...
"Warrio" <warrio@hotmail.com> a écrit dans le message de
news:466026a5$0$3806$5402220f@news.sunrise.ch...
Bonjour
Pourriez-vous me dire quel est le plus rapide entre GROUP BY et DISTINCT?
et
pourquoi?
Hum, il me semble surtout que la finalité n'est pas la même :
GROUP BY => Sert essentiellement à des opérations de comptage
ou de sommation.
Ci-dessous se trouve une réponse que j'ai eu, qui peut interesser qqun! A+ :) =============== GROUP BY will NOT be slower, since it forces you to specify which field(s) you really need to define 'unique-ness', it will be faster, or take the same time, at worst, than DISTINCT, but note that GROUP BY is more rigid than DISTINCT, since any expression in the SELECT clause must then be either in the GROUP BY, either aggregated.
SELECT DISTINCT lastName, firstName, telNumber FROM somewhere
will be slower than
SELECT lastName, firstName, MAX(telNumber) FROM somewhere GROUP BY lastName, firstName
since not only distinct will uselessly compare the telNumber field, but it will also reserve memory to keep it as 'group identifier'; the second solution neither does the comparison, neither has to reserve that extra memory.
Vanderghast, Access MVP
"Michel_D" a écrit dans le message de news: f3pbqa$l9p$
"Warrio" a écrit dans le message de news:466026a5$0$3806$
Bonjour
Pourriez-vous me dire quel est le plus rapide entre GROUP BY et DISTINCT? et pourquoi?
Hum, il me semble surtout que la finalité n'est pas la même : GROUP BY => Sert essentiellement à des opérations de comptage ou de sommation.