Forum |  HardWare.fr | News | Articles | PC | Prix | S'identifier | S'inscrire | Aide | Shop Recherche
1168 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  SQL DISTINCT requete spéciale (POSTGRESQL)

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

SQL DISTINCT requete spéciale (POSTGRESQL)

n°2350984
erwan83
Du Shift DEL tu te méfieras !
Posté le 06-04-2020 à 21:04:52  profilanswer
 

Bonjour
J'ai plusieurs champs: URL, TITRE, TEXT, RACINE .....
Je voudrais pouvoir retourner un seul exemplaire de RACINE tout en retournant les autres colonnes.
Si je demande SELECT DISTINCT RACINE FROM TABLE WHERE... il me retournera toutes les racines différentes sans doublons, mais je n'ai que RACINE
Si je demande SELECT DISTINCT RACINE, URL, TITRE FROM TABLE WHERE il me retournera toutes les racines avec doublons (comme dans le premier exemple ci dessous)
 
Je voudrais donc faire mon tri et, dès que je trouve une valeur RACINE différente, j'affiche la ligne (comme dans le dernier exemple)
Au lieu de  

Code :
  1. RACINE1 URL1 TITRE1
  2. RACINE1 URL2 TITRE2
  3. RACINE1 URL3 TITRE3
  4. RACINE2 URL4 TITRE4
  5. RACINE2 URL5 TITRE5
  6. RACINE2 URL6 TITRE6


avoir juste

Code :
  1. RACINE1 URL1 TITRE1
  2. RACINE2 URL4 TITRE4



---------------
http://www.ypikay.fr/index_FR.php
mood
Publicité
Posté le 06-04-2020 à 21:04:52  profilanswer
 

n°2350994
rufo
Pas me confondre avec Lycos!
Posté le 06-04-2020 à 22:22:06  profilanswer
 

GROUP BY RACINE ?
Evite le distinct, c'est assez lent. Group by est plus rapide. Par contre, certains SGBD rigoristes par rapport à la norme interdisent de mettre dans le group by moins de champs qu'il n'y en a dans le select (on retire bien entendu les champs de type aggrégation genre MAX, count, SUM...). Mysql le tolère alors que Firebird non (si on considère que c'est un SGBD :o).


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Cantine Calandreta : http://sourceforge.net/projects/canteen-calandreta
n°2350998
erwan83
Du Shift DEL tu te méfieras !
Posté le 06-04-2020 à 22:33:36  profilanswer
 

Merci. j'ai jamais compris le group by.
Parce que là j'essaye de le caler dans tous les coins ça m'envoie bouler.
SELECT RACINE,URL,TITLE,PREUVE,POIDS FROM TABLE GROUP BY URL   ??


---------------
http://www.ypikay.fr/index_FR.php
n°2350999
erwan83
Du Shift DEL tu te méfieras !
Posté le 06-04-2020 à 22:36:48  profilanswer
 

SELECT RACINE,URL,TITLE,PREUVE,POIDS FROM _requete__goodmoon GROUP BY URL
 
Query failed: ERREUR: la colonne « _requete__goodmoon__.racine » doit apparaître dans la clause GROUP BY ou doit être utilisé dans une fonction d'agrégat


Message édité par erwan83 le 06-04-2020 à 22:37:35

---------------
http://www.ypikay.fr/index_FR.php
n°2351001
rufo
Pas me confondre avec Lycos!
Posté le 06-04-2020 à 22:41:03  profilanswer
 

SELECT RACINE,URL,TITLE,PREUVE,POIDS FROM TABLE GROUP RACINE.
 
Dans Mysql, ça passerait. Mais comme expliqué, certains SGBD à cheval sur  la norme râlent avec ce genre de requête.
Donc si ce que j'ai mis marche pas, c'est que Postgres est à cheval sur la norme.


---------------
Astres, outil de help-desk GPL : http://sourceforge.net/projects/astres, ICARE, gestion de conf : http://sourceforge.net/projects/icare, Outil Cantine Calandreta : http://sourceforge.net/projects/canteen-calandreta
n°2351002
erwan83
Du Shift DEL tu te méfieras !
Posté le 06-04-2020 à 22:46:27  profilanswer
 

merci je vais voir ca


---------------
http://www.ypikay.fr/index_FR.php
n°2354293
dede_sav
Posté le 23-05-2020 à 17:56:07  profilanswer
 

Ca ne va pas plaire à Postgres.
 
J'essayerais de rajouter des min/max.
 
SELECT RACINE, max(URL), max(TITLE), max(PREUVE), max(POIDS) FROM TABLE GROUP 1
 
Après si tu veux vraiment la première occurence de chaque group, il va falloir regarder du coté des rank et des partitions.
 
dd
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  SQL DISTINCT requete spéciale (POSTGRESQL)

 

Sujets relatifs
Sql Server Jointure entre table sur 2 BDDEncore mes plantages bizarres (POSTGRESQL cette fois)
MYSQL : update et select en une seule requêtePREPARE PostGreSQL Ca marche... presque
Excel - intégration de données JSON via requête sur site WEB[POSTGRESQL] WTF création unique impossibe
[POSTGRESQL] Visualisation BDD TABLES etcRequête ou interface avec cumul quotidien, hebdo, etc.
[SQL][SGBD] Base sur le SGBD ?SQL: Bonnes pratiques et conventions
Plus de sujets relatifs à : SQL DISTINCT requete spéciale (POSTGRESQL)


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite) / Groupe LDLC / Shop HFR