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

QlikView Discussion :

Problème formatage texte dans requête SQL


Sujet :

QlikView

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Octobre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tchèque Rep.

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Octobre 2014
    Messages : 73
    Points : 46
    Points
    46
    Par défaut Problème formatage texte dans requête SQL
    Bonjour,

    Mon problème est le suivant : j'ai une table avec des données de type "texte" soit :

    id code
    1 007
    2 1110
    3 f1110
    4 666
    5 50
    6 m50

    Si je la charge dans qlikview la ligne 3 perd le "f".

    Je sais que f1110 est interprétée comme ayant la même valeur que 1110 et qu'en temps normal la fonction text() permet de résoudre le problème.

    L'ennui c'est que je souhaite faire cette requête via ODBC, je ne peux donc pas utiliser la fonction text() de qlikview.

    J'ai tenté avec la fonction cast() de SQL, sans succès.


    Merci d'avance pour vos réponses !

  2. #2
    Modérateur

    Inscrit en
    Octobre 2006
    Messages
    1 649
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 649
    Points : 2 529
    Points
    2 529
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    Vous pouvez utiliser la fonction "text()" de la manière suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    nom_table:
    LOAD 
    *,
    text(mon_champ) AS champ_formaté
    ;
    SQL SELECT
    ...
    FROM ...
    ;

  3. #3
    Membre du Club
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Octobre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tchèque Rep.

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Octobre 2014
    Messages : 73
    Points : 46
    Points
    46
    Par défaut
    OK, intéressante je savais pas qu'on pouvait faire cela,

    par contre, il n'as pas l'air d'aimer la syntaxe de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
    LOAD
    *,
    text (ma_table)
    ;
    Il a pas aimé pas le "*" et l'ajout de rubrique après, cela est-il juste ?

  4. #4
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2008
    Messages
    940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 940
    Points : 1 409
    Points
    1 409
    Par défaut
    Bonjour.
    Il ne faut pas utiliser text(ma_table) mais text(mon_champ)

  5. #5
    Membre du Club
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Octobre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tchèque Rep.

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Octobre 2014
    Messages : 73
    Points : 46
    Points
    46
    Par défaut
    Oui pardon, j'ai écris ma table en pensant mon champ dans le dernier message. Et du coup ça devrait fonctionner avec l"*" et le champ ?

  6. #6
    Modérateur

    Inscrit en
    Octobre 2006
    Messages
    1 649
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 649
    Points : 2 529
    Points
    2 529
    Billets dans le blog
    6
    Par défaut
    Citation Envoyé par Seth_Nemesia111 Voir le message
    Et du coup ça devrait fonctionner avec l"*" et le champ ?
    Oui, ça doit fonctionner.
    "*" veut dire "prends tous les champs" et on peut rajouter des champs à la suite (séparés par une virgule).
    Il faut juste faire attention à ne pas nommer 2 champs pareil, c'est pour cela qu'il faut utiliser "AS" pour définir un nouveau nom.

  7. #7
    Membre du Club
    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Octobre 2014
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tchèque Rep.

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Octobre 2014
    Messages : 73
    Points : 46
    Points
    46
    Par défaut
    Ah voila, ça doit être ça le problème, j'ai renommé le champ comme il l'était initialement. Super merci beaucoup !

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

Discussions similaires

  1. problème avec une requete sql
    Par crmien dans le forum Requêtes
    Réponses: 3
    Dernier message: 04/03/2010, 08h57
  2. Réponses: 8
    Dernier message: 22/06/2009, 18h06
  3. [E-07] Problème avec la requete SQL
    Par law56100 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 17/03/2009, 16h43
  4. Problèmes avec ma requete SQL de mise a jour
    Par k750_b dans le forum Langage SQL
    Réponses: 5
    Dernier message: 19/02/2008, 23h22
  5. Problème avec une requete SQL sous access
    Par Luther13 dans le forum Requêtes et SQL.
    Réponses: 12
    Dernier message: 14/12/2005, 10h39

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