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 :

Recherche alternative dans un champ récupéré via une requete sql


Sujet :

Requêtes et SQL.

  1. #1
    Futur Membre du Club
    Inscrit en
    Juin 2010
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 11
    Points : 9
    Points
    9
    Par défaut Recherche alternative dans un champ récupéré via une requete sql
    Bonjour,
    Je me pose une question.
    J'ai une table OBJET avec un ID, TYPE, DATE.
    je souhaite récupérer ,dans une requête sql , la valeur dans le champs 'TYPE' qui est de type chaine de caractère tout en effectuant une recherche alternative sur cette chaine.

    Merci pour vos réponses

  2. #2
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Bonjour,

    Je n'ai pas compris votre demande et plus particulièrement la recherche alternative. Un exemple ?

  3. #3
    Futur Membre du Club
    Inscrit en
    Juin 2010
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 11
    Points : 9
    Points
    9
    Par défaut Recherche alternative dans un champs récupré via une requete sql
    Je présente un exemple :
    si la valeur dans le champs 'TYPE' vaut 'aabcabb' alors la requête me récupère la valeur : a b a b

  4. #4
    Membre expérimenté Avatar de Gado2600
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Mai 2013
    Messages
    903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Office VBA

    Informations forums :
    Inscription : Mai 2013
    Messages : 903
    Points : 1 364
    Points
    1 364
    Par défaut
    On ne peut pas suggérer des solutions sans un minimum d'informations.

    Vous demandez une "recherche alternative" qui retourne un résultat qui, pour ceux qui ne connaissent pas l'objectif du projet que vous menez, ne veulent absolument rien dire.

    Il faudrait que l'on puisse savoir pourquoi vous partez d'une source pour arriver à un objectif.
    Le sabre est une arme. Le kendo est un art de tuer. Quelles que soient les belles paroles pour l'expliquer, telle est sa vérité.

  5. #5
    Futur Membre du Club
    Inscrit en
    Juin 2010
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 11
    Points : 9
    Points
    9
    Par défaut
    je m'explique

    la recherche alternative ici veut dire que si on veut afficher les caractères a et b alors on doit respecter l'occurence de a et b dans la chaine , c'est à dire lors du parcours de la chaine si je trouve le caractère 'a' je l'affiche et si je rencontre de nouveau le 'a' je l'affiche pas tant que j'ai pas encore rencontré mon 'b', donc je poursuis l'affichage de 'a' et 'b' à la base de cette règle jusqu'à ne plus trouver le 'a' suivant ou le 'b' suivant

  6. #6
    Membre expérimenté Avatar de Gado2600
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Mai 2013
    Messages
    903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Office VBA

    Informations forums :
    Inscription : Mai 2013
    Messages : 903
    Points : 1 364
    Points
    1 364
    Par défaut
    Et qu'advient donc le 'c' dans 'aabcabb' ?
    Le sabre est une arme. Le kendo est un art de tuer. Quelles que soient les belles paroles pour l'expliquer, telle est sa vérité.

  7. #7
    Futur Membre du Club
    Inscrit en
    Juin 2010
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 11
    Points : 9
    Points
    9
    Par défaut
    mon but c'est n'afficher que les caractères 'a' et 'b' d'une façon alternative et passe si je trouve un 'c' ou tout autre caractère différent de 'a' et 'b'

  8. #8
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Impossible en SQL sans recourir au VBA

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    Function RechercheAlternative(ChaineSource, ParamArray ChaineAChercher()) As String
    Dim i As Integer
    Dim j As Integer
    Dim c As String
    If IsNull(ChaineSource) Then Exit Function
    'Parcours le texte
    For i = 1 To Len(ChaineSource)
        If j > UBound(ChaineAChercher) Then j = 0
            c = Mid(ChaineSource, i, 1)
            If c = ChaineAChercher(j) Then
                RechercheAlternative = RechercheAlternative & c
                j = j + 1
            End If
    Next i
    End Function

  9. #9
    Membre expérimenté Avatar de Gado2600
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Mai 2013
    Messages
    903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Office VBA

    Informations forums :
    Inscription : Mai 2013
    Messages : 903
    Points : 1 364
    Points
    1 364
    Par défaut
    Ok !
    C'est plus compréhensible
    En SQL, je ne sais pas si c'est faisable.
    En VBA, par contre, oui.

    J'ai déjà fait un truc du genre.
    Tu récupère la taille de ta chaîne.

    Tu boucles de 1 à len(chaine de caractère)
    Tu récupère le Right(Left(chaine de caractère, i),1)
    Cela te permet de récupérer un caractère à tester et tu le compare avec le dernier caractère que tu as préalablement stocké dans une nouvelle chaine.


    un lien pour t'aider :
    http://silkyroad.developpez.com/VBA/...nesCaracteres/
    Voilà.

    Bon courage
    Le sabre est une arme. Le kendo est un art de tuer. Quelles que soient les belles paroles pour l'expliquer, telle est sa vérité.

  10. #10
    Futur Membre du Club
    Inscrit en
    Juin 2010
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 11
    Points : 9
    Points
    9
    Par défaut
    est ce que c'est possible de me donner un exemple d'algorithme qui résout le problème de recherche alternative dans VBA?
    Merci

  11. #11
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Voir ma réponse plus haut

  12. #12
    Futur Membre du Club
    Inscrit en
    Juin 2010
    Messages
    11
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 11
    Points : 9
    Points
    9
    Par défaut
    Merci pour vos réponses
    malheureusement j'ai encore besoin d'une requête purement sql

  13. #13
    Expert éminent sénior

    Avatar de Tofalu
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Octobre 2004
    Messages
    9 501
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Associations - ONG

    Informations forums :
    Inscription : Octobre 2004
    Messages : 9 501
    Points : 32 311
    Points
    32 311
    Par défaut
    Et bien ce n'est pas possible

Discussions similaires

  1. Réponses: 3
    Dernier message: 08/12/2013, 17h44
  2. Réponses: 2
    Dernier message: 19/11/2011, 13h21
  3. [AC-2007] 2 criteres dans un champ calculé d une requete
    Par fabian_945 dans le forum Requêtes et SQL.
    Réponses: 0
    Dernier message: 30/01/2010, 18h51
  4. Supprimer la valeur d'un champs access via une chaine SQL
    Par beegees dans le forum Langage SQL
    Réponses: 4
    Dernier message: 23/10/2006, 15h20

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