IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Requêtes MySQL Discussion :

Corriger résultat requête


Sujet :

Requêtes MySQL

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Support interfaçage
    Inscrit en
    Juin 2017
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Support interfaçage
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2017
    Messages : 45
    Points : 28
    Points
    28
    Par défaut Corriger résultat requête
    Bonjour à tous,

    je fais une extraction d'une base de données, et dans un des champs, j'ai la civilité sous la forme 0 ou 1 , mais je voudrai avoir le résultat dans mon fichier de sortie sous la forme Mr ou Mme.

    Est-ce possible ?

    Voici ma requête acutelle :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    select etablissement.nom as 'NOM ETABLISSEMENT',patient.nom as 'NOM',prenom as 'PRENOM',ifnull(securitesocial,'') as 'SECURITE SOCIAL',ifnull(chambre,'') as 'CHAMBRE',ifnull(lit,'') as 'LIT',ifnull(service,'') as 'SERVICE',ifnull(etage,'') as 'ETAGE' from patient inner join etablissement on patient.etablissement=etablissement.cdo_id order by etablissement.nom,patient.nom ASC ;
    il faudrait donc rajouter un champs dans le select civilite et qui retourne MR si 0 et Mme si 1.

    Dans ma base j'ai du 0 ou du 1 dans cette colonne civilité, mais j'aimerai ressortir Mr ou Mme.

    Cette requête sera lancée à partir d'un exe simple, ouvrant le fichier excel de sortie de mysql.

    D'avance, merci de votre aide

  2. #2
    Membre averti
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mars 2014
    Messages
    219
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2014
    Messages : 219
    Points : 336
    Points
    336
    Par défaut
    Bonjour,

    As-tu essayé ?
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT IF(civilite=0,'M','Mme');

    Documentation

    Cordialement.
    Si débugger est l'art de corriger les bugs, alors programmer est l'art d'en créer.

  3. #3
    Modérateur
    Avatar de escartefigue
    Homme Profil pro
    bourreau
    Inscrit en
    Mars 2010
    Messages
    10 133
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loir et Cher (Centre)

    Informations professionnelles :
    Activité : bourreau
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 10 133
    Points : 38 555
    Points
    38 555
    Billets dans le blog
    9
    Par défaut
    Bonjour,

    Le standard SQL pour cet usage est "CASE"
    Et la règle en français pour les abréviations est "M." pour monsieur (et MM. pour messieurs).
    "Mr" est une abréviation anglaise, à n'utiliser que si votre application est anglophone, cette faute est malheureusement très courante notamment dans les systèmes d'information

    Cf. : http://www.les-abreviations.com/civilite.html

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    Exemple :
    SELECT CASE
              WHEN CIVILITE = '0' THEN 'M.'
              WHEN CIVILITE = '1' THEN 'Mme'
              ELSE '?'
           END as CIV
    FROM Ma_table
    WHERE ...

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Support interfaçage
    Inscrit en
    Juin 2017
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Support interfaçage
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2017
    Messages : 45
    Points : 28
    Points
    28
    Par défaut
    Super, merci pour les informations.

    La première est fonctionnelle mais j'ai bien compris que la seconde avec le case est plus propre et plus en rapport avec ma demande.

    Je teste cela aujourd'hui, mais sujet résolu

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Support interfaçage
    Inscrit en
    Juin 2017
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Support interfaçage
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2017
    Messages : 45
    Points : 28
    Points
    28
    Par défaut
    L'utilisation du case est on ne peut plus simple.....

    un grand merci

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL] Affichage résultat requête SQL dans page HTML comme un tableau
    Par joxbl dans le forum PHP & Base de données
    Réponses: 13
    Dernier message: 14/03/2011, 14h26
  2. Formatage résultat requête
    Par Original Prankster dans le forum Langage SQL
    Réponses: 19
    Dernier message: 06/09/2005, 19h02
  3. Résultat requête
    Par mr.t dans le forum Bases de données
    Réponses: 2
    Dernier message: 01/02/2005, 18h58
  4. [IB6] Stocker résultat requête ds fichier txt réseau
    Par Cerberes dans le forum Débuter
    Réponses: 6
    Dernier message: 04/10/2004, 15h13
  5. Table temporaire et résultat requête
    Par Royd938 dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 27/07/2004, 14h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo