Salut, Je suis vraiment pas spécialiste MySQL. mais cette requête semble fonctionner:
SELECT `nom`, `adresse`, ( SELECT `prenom` FROM `clients` AS clients2 WHERE `clients`.`nom` = `clients2`.`nom` ORDER BY `date` ASC LIMIT 1 ) AS prenom FROM `clients` GROUP BY `nom` , `adresse` @+ Fred Le 6 avril 2010 11:38, Alexis Domjan <[email protected]> a écrit : > Bonjour à toutes et tous, > > Je cherche à faire une requête SQL mais je ne parviens pas à mes fins > autrement qu'en traitant les données via un script, ce que j'aimerais éviter > ;) > > En gros j'ai une base de données de personne avec nom, prenom, adresse, et > date de naissance. Le but est d'envoyer un courrier à chaque personne, mais > dans le cas d'une famille à n'envoyer qu'à une seule personne. > > J'ai donc fait une requête du type: > > SELECT nom, COUNT(nom), adresse FROM clients GROUP BY nom, adresse ORDER BY > count DESC; > > Ensuite je pourrais extraire ainsi: > > SELECT nom, COUNT(nom), adresse FROM clients GROUP BY nom, adresse HAVING > COUNT(nom) = 1; > > Ce groupe ne pose pas de problème puisqu'il n'y a qu'une personne par > adresse. Par contre dans le cas où COUNT(nom) vaut 2, 3 ou 4 je voudrais > obtenir la ligne (avec le prénom) de la personne la plus âgée. > > Merci d'avance pour votre aide, > a+ > -- > Alexis Domjan <[email protected]> > _______________________________________________ > gull mailing list > [email protected] > http://forum.linux-gull.ch/mailman/listinfo/gull >
_______________________________________________ gull mailing list [email protected] http://forum.linux-gull.ch/mailman/listinfo/gull
