Savoir combien de champs sont renseignés parmi 7 [MySQL] - SQL/NoSQL - Programmation
Marsh Posté le 27-03-2015 à 15:12:34
Citation : Je me demandais s'il existait un moyen de transformer la "non nullité" d'un champ en 1 et sa "nullité" en 0, puis faire la somme d'une manière ou d'une autre ? |
Oui avec un case:
Code :
|
Ensuite tu peux très bien sommer le résultat du case:
Code :
|
Avec le GROUP BY qui va bien.
Marsh Posté le 27-03-2015 à 15:19:59
Merci, je ne connaissais pas ce "CASE" en SQL, je vais me pencher là-dessus
Marsh Posté le 27-03-2015 à 16:30:09
Après, vue que tu parles que les champs tél d'une personne sont mis dans différentes tables (encore une BD bien conçu, j'ai l'impression ), tu peux aussi faire des LEFT JOIN et compter les valeurs non nulles obtenues. mais sans MCD, difficile de te donner une réponse plus précise...
Marsh Posté le 27-03-2015 à 14:52:41
Bonjour,
Je dois faire une requête un peu particulière, je me demande si elle est possible en SQL.
Dans la base de données, j'ai 7 numéros de téléphone répartis un peu partout dans différentes tables.
Je voudrais savoir le nb de personnes qui ont 1 ou 2 ou 3 ou 4 ou 5 ou 6 numéros de renseignés parmi ces 7 numéros maximum.
Pour le 0 et le 7 je peux le faire assez facilement (personne in () and in () etc et inversement not in).
Je me demandais s'il existait un moyen de transformer la "non nullité" d'un champ en 1 et sa "nullité" en 0, puis faire la somme d'une manière ou d'une autre ?
Si qqun peut m'aider
Message édité par sire de Botcor le 27-03-2015 à 14:53:15
---------------
«Ceux qui croient que les peuples suivront leurs intérêts et non leurs passions n’ont rien compris au XXe siècle.» © Raymond Aron