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 et SQL. Discussion :

Changer valeur alpha en numerique


Sujet :

Requêtes et SQL.

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    89
    Détails du profil
    Informations personnelles :
    Âge : 80
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 89
    Points : 55
    Points
    55
    Par défaut Changer valeur alpha en numerique
    Bonjour
    voila j'ai un champ de table avec une valeur qui peut être A ou B ou C ou D ou E ou Null

    et dans ma requête je voudrais transformer cela en numérique de la façon suivante

    A = 1
    B = 2
    C = 3
    D = 4
    E = 5
    NULL = 6

    avec VraiFaux je sais traiter une valeur

    VraiFaux([monchamp]="A";1)

    mais comment traiter toutes les valeurs ?

    Merci pour votre aide

  2. #2
    Expert éminent

    Avatar de Maxence HUBICHE
    Homme Profil pro
    Développeur SQLServer/Access
    Inscrit en
    Juin 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur SQLServer/Access

    Informations forums :
    Inscription : Juin 2002
    Messages : 3 842
    Points : 9 197
    Points
    9 197
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Valeur:iif(isnull([champ]);6;asc(ucase([Champ]))-64)
    en espérant qu'il n'y a que A, B, C, D, E ou Null dans ton Champ

  3. #3
    Membre du Club
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    89
    Détails du profil
    Informations personnelles :
    Âge : 80
    Localisation : France

    Informations forums :
    Inscription : Mars 2005
    Messages : 89
    Points : 55
    Points
    55
    Par défaut
    Ok ça marche avec ça

    IIf([hanche D]="A",1) AS 1, IIf([hanche D]="B",2) AS 2, IIf([hanche D]="C",3,0) AS 3, IIf([hanche D],"",5) AS 5, IIf(IsNull([hanche D]),6,Asc(UCase([hanche D]))-64) AS COTE
    ou bien en mode graphique:

    COTE: VraiFaux(EstNull([hanche D]);6;Asc(Majuscule([hanche D]))-64)

    mais juste une question pourquoi 64 ?

    merci

  4. #4
    Expert éminent

    Avatar de Maxence HUBICHE
    Homme Profil pro
    Développeur SQLServer/Access
    Inscrit en
    Juin 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur SQLServer/Access

    Informations forums :
    Inscription : Juin 2002
    Messages : 3 842
    Points : 9 197
    Points
    9 197
    Par défaut
    parce que le caractère ASCII A vaut 65 B=66, C=67.... donc, si on retire 64, ca fait 1, 2, 3, ...

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

Discussions similaires

  1. Forcer une valeur alpha en numérique
    Par lodan dans le forum Langage
    Réponses: 2
    Dernier message: 14/11/2006, 17h29
  2. Changer valeur d un lien javascript
    Par stephane92400 dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 13/07/2006, 18h44
  3. changer valeur input a la volée
    Par epeichette dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 19/05/2006, 11h05
  4. Recuperer la valeur alpha
    Par Jbx 2.0b dans le forum SDL
    Réponses: 2
    Dernier message: 07/02/2006, 18h12
  5. changer valeur du onsubmit ?
    Par elenel dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 25/08/2005, 10h45

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