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 :

Un défi: convertir en INT, mais garder les cellules vides


Sujet :

Requêtes et SQL.

  1. #1
    Nouveau membre du Club
    Femme Profil pro
    developpeur fichiers
    Inscrit en
    Janvier 2017
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : developpeur fichiers
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2017
    Messages : 30
    Points : 27
    Points
    27
    Par défaut Un défi: convertir en INT, mais garder les cellules vides
    Bonjour,

    question épineuse sur laquelle je ne trouve pas de réponses nulle part:

    SOIT :
    TRANSACTION_A de type varchar(80)

    NO_TRANSACTION_A_PRIMAIRE de type INTEGER


    Je veux que
    Transaction A : T0104544
    devienne
    NO_TRANSACTION_A_PRIMAIRE : 104544


    J’utilise dont cast (right(TRANSACTION_A,7) as int) .


    LE PROBLÈME ... est que je ne veux pas avoir 0 quand la cellule est vide (je veux qu’elle reste vide). J’ai essayé plein de choses (IIF(), isnull() ), mais ça ne fonctionne pas. Je sais, oui : je transforme en INT, donc c’est logique qu’il veuille mettre un 0.

    Cependant, il y a sûrement moyen de remplacer les 0 par des cellules vides

    Cette requete donne des NULL au lieu de zero. Malheureusement, quand j’ajoute la condition ISNULL… ca ne fonctionne pas par contre.

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    SELECT 
    case 
    when transaction_A <> '' then 
           cast (right(TRANSACTION_A,7) as int) 
    --else isnull (cast(right(TRANSACTION_A,7) as int),'')    
    end
    from   maTable

  2. #2
    Modérateur

    Homme Profil pro
    Inscrit en
    Octobre 2005
    Messages
    15 371
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2005
    Messages : 15 371
    Points : 23 845
    Points
    23 845
    Par défaut
    Bonjour.

    Ce n'est visiblement pas du SQL Access, ça ressemble plus à du T-SQL (MS SQL Server) ou du P-SQL peut-être (Oracle).

    Si oui je t'invite à poster dans le forum correspondant.

    Si tu veux le faire en Access, c'est en passant par une requête sur la table liée et en mettant quelque chose comme :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    iif(not isnull([TaTable].[TonChamp]), clng(mid([TaTable].[TonChamp],2), [TaTable].[TonChamp])
    En Access pur tu ne peux pas altérer la structure de la table dans la BD distante.

    A+

  3. #3
    Nouveau membre du Club
    Femme Profil pro
    developpeur fichiers
    Inscrit en
    Janvier 2017
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Canada

    Informations professionnelles :
    Activité : developpeur fichiers
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2017
    Messages : 30
    Points : 27
    Points
    27
    Par défaut merci pour l'info!
    Désolée, je ne croyais pas être dans le mauvais forum. Merci de me l'avoir dit.

Discussions similaires

  1. Réponses: 9
    Dernier message: 23/02/2009, 18h08
  2. bordures pour les cellules vides
    Par luimême dans le forum Mise en page CSS
    Réponses: 1
    Dernier message: 26/12/2007, 13h12
  3. Enlever les cellules vide dans un ComboBox
    Par Dream Master dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 31/05/2007, 17h14
  4. Afficher les cellules vides...
    Par Invité dans le forum ASP
    Réponses: 1
    Dernier message: 31/08/2005, 18h32
  5. masquer un champs mais garder les evenements ?
    Par Pymm dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 21/07/2005, 13h33

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