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

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  [MYSQL] supprimer 'doublon' lors d'un select

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[MYSQL] supprimer 'doublon' lors d'un select

n°1724685
tifrere
Junos power
Posté le 25-04-2008 à 18:59:37  profilanswer
 

Hello,  
 
a mes heures perdues au boulot je fait un peu de dev php/perl/mysql pour réaliser des petites applis utilisables en interne.
Comme ce n'est pas du tout mon travail, je ne maitrise pas vraiment sql mais assez pour faire ce dont j'ai besoin.
 
Je développe actuellement une sorte d'intranet de gestion de stock et j'aurais une petite question a vous poser.
 
Voici un schéma très simplifié (avec des noms bateaux) de mes tables :  
 
objet (id, nom);
action (id, description, objet_id);
 
 
en gros j'ai des objets dans le stock sur lequel je fait des actions (ajout dans le stock, sortie du stock, retour dans le stock, modification etc)
 
 
Je voudrais une requete qui me permette d'avoir la liste des objets dans le stock ainsi que la derniere action associée.
 
Si je fais :  
select o.nom, a.description from objet o, action a where a.objet_id=o.id;
 
il me sortira autant de lignes par objet que d'action qu'il lui sont attribuées.
 
Est ce que qqn aurait l'astuce ?
 
Merci :jap:


Message édité par tifrere le 25-04-2008 à 19:00:38
mood
Publicité
Posté le 25-04-2008 à 18:59:37  profilanswer
 

n°1724686
Elmoricq
Modérateur
Posté le 25-04-2008 à 19:01:19  profilanswer
 

select distinct ... ?

n°1724687
tifrere
Junos power
Posté le 25-04-2008 à 19:03:35  profilanswer
 

quand tu fais un distinct il faut ne selectionner qu'une colone non ?
 
et si je fais le distinct sur tout il me sortira la meme chose.


Message édité par tifrere le 25-04-2008 à 19:03:52
n°1724688
tifrere
Junos power
Posté le 25-04-2008 à 19:05:21  profilanswer
 

ce ne sont pas vraiment des doublons (d'où 'doublon' entre guillemets dans le titre du topic) car les tuples sont tous uniques je voudrais juste avoir seulement o.id d'unique.


Message édité par tifrere le 25-04-2008 à 19:06:16
n°1724794
tifrere
Junos power
Posté le 26-04-2008 à 00:46:29  profilanswer
 

qqn a une idée ? je pense que ça ne dois pas être sorcier mais pour l'instant ça m'échappe...a vrai dire, j'ai pas bcp creusé non plus :D

n°1724914
moi23372
Posté le 26-04-2008 à 13:30:49  profilanswer
 

alors cherche. Le distinct fonctionnera si tu l'utilises correctement. Sinon il y a toujours moyen de s'en passer aussi, mais alors la query devient tout de suite beaucoup plus compliquée.

n°1725348
tifrere
Junos power
Posté le 28-04-2008 à 09:16:25  profilanswer
 

finalement j'ai trouvé un moyen détourné de faire ce que je voulais même si ce n'est pas très propre.
 
Lorsqu'une action est faite sur l'objet je met à jour un champ date dans l'objet ainsi qu'un champ date dans l'action. Il y a juste à comparer que les 2 champs dates soient les même :)
 
merci à ceux qui ont bien voulu m'aider.


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

  [MYSQL] supprimer 'doublon' lors d'un select

 

Sujets relatifs
[MySQL] SELECT COUNT + grouper par plages de valeursMYsql je n'y comprend rien, et formulaire non plus
Probleme de LIMIT dans un $mysql_query (variables inside:D)[mysql] help pour REGEXP
[MySQL] Copier des champs d'une base vers une autre.Supprimer le Slash en fin d'URL [URL Rewriting]
[MySQL] - Problème aux extrêmes...Union Select/liste valeur
champs liés entre 2 tables (mysql) 
Plus de sujets relatifs à : [MYSQL] supprimer 'doublon' lors d'un select


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR