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

Access Discussion :

Comparaison de 2 champs avec des antislash


Sujet :

Access

  1. #1
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 47
    Points : 38
    Points
    38
    Par défaut Comparaison de 2 champs avec des antislash
    Bonjour,

    j'ai une base avec 2 tables T1 et T2.
    dans T1 j'ai un champ ch1 avec des données du style : bla\rz21h\021\51
    dans T2 j'ai un champ ch2 avec des données du style : 021\51

    et je voudrais avoir la liste des enregistrements de T1 où ch2 est égal à la fin de ch1.

    La requête que j'ai fais est :

    req = "SELECT ch1 FROM T1, T2 WHERE ch1 like '%ch2' "

    Mais je n'ai aucun résultat alors que plein d'enrigstrement corrspondent à ma requête. Peut être est-ce dû aux antislash? je ne sais pas.

    merci

  2. #2
    Membre chevronné Avatar de guigui5931
    Profil pro
    Chef de projet NTIC
    Inscrit en
    Avril 2006
    Messages
    1 667
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 667
    Points : 2 232
    Points
    2 232
    Par défaut
    Si tu met
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    req = "SELECT ch1 FROM T1, T2 WHERE ch1 like '*ch2' "

  3. #3
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 47
    Points : 38
    Points
    38
    Par défaut
    toujours aucun résultat

  4. #4
    Membre éclairé Avatar de stéphane_ais2
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    792
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 792
    Points : 891
    Points
    891
    Par défaut
    Bonjour,

    Regarde du côté des fonctions touchant aux manipulations de chaînes de caractères comme Right pour isoler ce qui t'intéresse...

    SE

  5. #5
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 47
    Points : 38
    Points
    38
    Par défaut
    ok je vais faire ça merci je vous dirais ce qu'il en retourne.
    +

  6. #6
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 47
    Points : 38
    Points
    38
    Par défaut
    j'ai essayé ça mais sans succès, toujours aucun résultat

    req = "SELECT id_t1 FROM T1, T2 WHERE nom_t2=Right(nom_t1,6) "

    j'aurais bien voulu utiliser MID

    req = "SELECT id_t1 FROM T1, T2 WHERE nom_t2=Mid(nom_t1,?,3)+'\'+Right(nom_t1,3) "

    mais je ne connais pas la taille de mon champ, ou alors je pourrais aussi calculer la taille de mon champ de façon dynamique et enlever 7 caractères (car en revanche je connais la taille de la sous chaine à comprarer) mais là je trouve tordu pour une simple comparaison, non?

  7. #7
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 47
    Points : 38
    Points
    38
    Par défaut
    je vois que malheureusement mon sujet tombe dans les oubliettes du forum et que personne ne peut me dire comment faire plus simplement alors, d'éventuelles personnes intéressées, j'ai fait comme dit précédemment :

    req = "SELECT id_t1 FROM T1, T2 WHERE nom_t2=Mid(nom_t1,len(nom_t1)-6,3)+'\'+Right(nom_t1,3) "

    ....c'est pas beau mais ça marche.

    merci quand même à stéphane_ais2 et guigui5931.

  8. #8
    Expert confirmé

    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 419
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 419
    Points : 4 297
    Points
    4 297
    Par défaut
    where rigth(t1,len(t2))=[t2]

  9. #9
    Membre éclairé Avatar de stéphane_ais2
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    792
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 792
    Points : 891
    Points
    891
    Par défaut
    Tu peux regarder du côté des tutos et notamment celui réalisé par Caféine sur les expressions régulières...pour le côté plus professionnel (indéniablement...) que cela apporte.
    Mais je suis dans la position de celui qui dit Fait ce que je dis...pas ce que je fais...car je continue de bricoler...par paresse...

    SE

  10. #10
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Avril 2006
    Messages
    47
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2006
    Messages : 47
    Points : 38
    Points
    38
    Par défaut
    pour where rigth(t1,len(t2))=[t2], non ça m'affiche plein resultats.

    Pour le tuto de Caféine, je regarderai, merci àvous.

    ++

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

Discussions similaires

  1. POST : champs avec des noms identiques ou des IDs ?
    Par Luke58 dans le forum Langage
    Réponses: 1
    Dernier message: 24/05/2007, 11h25
  2. [JS] contrôle sur la saisie d'un champ avec des valeurs numeriques ?
    Par adil_vpb dans le forum Général JavaScript
    Réponses: 14
    Dernier message: 22/03/2007, 11h12
  3. [CR9] Mise en forme de champ avec des formats
    Par Sytchev3 dans le forum SAP Crystal Reports
    Réponses: 2
    Dernier message: 01/03/2007, 16h35
  4. nom de table et de champs avec des espaces
    Par grinder59 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 16/05/2006, 17h30
  5. [CR8.5] Chevauchement de champs avec des groupes
    Par kikidrome dans le forum SAP Crystal Reports
    Réponses: 5
    Dernier message: 11/10/2005, 22h50

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