Bonjour,
pourrait-on m'expliquer le rôle des 2 expression dans la requête suivante :
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part select distinct year(installdate),count(name) from infotech group by year(installdate)
Bonjour,
pourrait-on m'expliquer le rôle des 2 expression dans la requête suivante :
Code sql : Sélectionner tout - Visualiser dans une fenêtre à part select distinct year(installdate),count(name) from infotech group by year(installdate)
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
Si la discussion est résolue, merci de cliquer sur le bouton
Bonjour,
Dans une requête, distinct permet d'éliminer les doublons.
Si tu fais select year(installdate) from infotech tu auras toutes les lignes de ta table.
Le "group by" permet une agrégation, dans ta requête pour chaque années - year(installdate) - tu vas comptabiliser combien de lignes il y a pour chaque date.
PS : pas la peine de faire un distinct alors que tu as un "group by", puisque tu es déjà assuré de l'unicité des années.
- So.... what exactly is preventing us from doing this?
- Geometry.
- Just ignore it !!
****
"The longer he lived, the more he realized that nothing was simple and little was true" A clash of Kings, George R. R. Martin.
***
Quand arrivera l'apocalypse, il restera deux types d'entreprise : les pompes funèbres et les cabinets d'audit. - zecreator, 21/05/2019
Sous réserve d'ajouter un count
Des explications plus complètes dans ce post : http://www.developpez.net/forums/d11...inct-group-by/
Il y a un "count" dans sa requête, je me suis permis de l'expliquer (je pense que l'auteur a tiré cette requête d'un projet dont la partie SQL a été faite par quelqu'un d'autre)
- So.... what exactly is preventing us from doing this?
- Geometry.
- Just ignore it !!
****
"The longer he lived, the more he realized that nothing was simple and little was true" A clash of Kings, George R. R. Martin.
***
Quand arrivera l'apocalypse, il restera deux types d'entreprise : les pompes funèbres et les cabinets d'audit. - zecreator, 21/05/2019
Oups en effet, je file chez l'opticien
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
Si la discussion est résolue, merci de cliquer sur le bouton
Bonjour
Non, pas tel que c'est écrit.
Si vous voulez compatbiliser le nombre de valeurs distincte pour la colonne name (dans chaque groupe indépendamment), alors il faut mettre le distinct dans la fonction COUNT() :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 select year(installdate),count(distinct name) from infotech group by year(installdate)
Merci : c'est clair
Il vaut mieux viser la perfection et la manquer que viser l'imperfection et l'atteindre. - Bertrand Russell
Si la discussion est résolue, merci de cliquer sur le bouton
Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
* * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager