Petits soucis avec sql
Leouargli
Messages postés
1
Date d'inscription
Statut
Membre
Dernière intervention
-
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
jordane45 Messages postés 38486 Date d'inscription Statut Modérateur Dernière intervention -
Bonjour,
Voici mon problème :
J’ai une base mysql qui se nomme « meillant » composée de trois tables « deces, mariages, naissances ».
Tout d’abord, je veux connaitre le nombre de mariage.
Le résultat est 2724, c’est le nombre d’acte, sachant qu’il y a une ligne par acte dans cette table.
Dans la table mariages, je veux connaitre le nombre de patronymes différents des époux et des épouses.
Pour les époux, je passe la commande suivante :
Le résultat est 620 patronymes différents, OK
Le résultat est 588 patronymes différents, OK
La somme des deux résultats est 1208, sachant qu’il y a des patronymes identiques chez les hommes et les femmes
Maintenant je veux connaitre les patronymes différents époux et épouses .
La le résultat est 1344, je ne comprends pas, dans tous les cas, il ne devrait pas être supérieur à 1208.
Mon select est certainement pas terrible, mais je ne vois pas comment faire.
Si quelqu’un pouvait me donner la solution, j’en serai ravi.
Merci d’avance
Voici mon problème :
J’ai une base mysql qui se nomme « meillant » composée de trois tables « deces, mariages, naissances ».
Tout d’abord, je veux connaitre le nombre de mariage.
SELECT count(*) FROM `mariages`
Le résultat est 2724, c’est le nombre d’acte, sachant qu’il y a une ligne par acte dans cette table.
Dans la table mariages, je veux connaitre le nombre de patronymes différents des époux et des épouses.
Pour les époux, je passe la commande suivante :
SELECT count(distinct `Nom_epoux`) FROM `mariages`
Le résultat est 620 patronymes différents, OK
SELECT count(distinct `Nom_epouse`) FROM `mariages`
Le résultat est 588 patronymes différents, OK
La somme des deux résultats est 1208, sachant qu’il y a des patronymes identiques chez les hommes et les femmes
Maintenant je veux connaitre les patronymes différents époux et épouses .
SELECT count(distinct `Nom_epoux`,`Nom_epouse` ) FROM `mariages`
La le résultat est 1344, je ne comprends pas, dans tous les cas, il ne devrait pas être supérieur à 1208.
Mon select est certainement pas terrible, mais je ne vois pas comment faire.
Si quelqu’un pouvait me donner la solution, j’en serai ravi.
Merci d’avance
Message modifié
par la modération |
---> | Pour une lecture plus facile du code, vous devez utiliser
les balises de code (en y précisant le langage) |
A voir également:
- Petits soucis avec sql
- Logiciel sql - Télécharger - Bases de données
- Requête sql pix - Forum Python
- Jointure sql ✓ - Forum MySQL
- Requete sql pix - Forum PHP
- Comment s'appellent les petits carrés qui apparaissent lorsqu'on zoome sur une image ? - Forum Logiciels
1 réponse
Bonjour,
N'aurais tu pas plusieurs fois les mêmes couples enregistrés plusieurs fois ?
Peux tu ajouter un group by sur tes requêtes et voir si tu as des valeurs supérieur à 1 ?
N'aurais tu pas plusieurs fois les mêmes couples enregistrés plusieurs fois ?
Peux tu ajouter un group by sur tes requêtes et voir si tu as des valeurs supérieur à 1 ?
SELECT Nom_epoux, count(`Nom_epoux`) FROM `mariages` GROUP BY Nom_epoux
SELECT Nom_epouse, count(`Nom_epouse`) FROM `mariages` GROUP BY Nom_epouse
SELECT CONCAT(`Nom_epoux`, ' - ', `Nom_epouse`) As COUPLE ,count(* ) FROM `mariages` GROUP BY CONCAT(`Nom_epoux`, ' - ', `Nom_epouse`)