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

Langage SQL Discussion :

requete sur un numéro de téléphone alors que la table n'en contient qu'une partie


Sujet :

Langage SQL

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

    Informations forums :
    Inscription : Septembre 2006
    Messages : 57
    Points : 29
    Points
    29
    Par défaut requete sur un numéro de téléphone alors que la table n'en contient qu'une partie
    Bonjour,

    Je cherche à effectuer une requête SQL simple mais qui me pose problème :
    La table se présente de cette façon

    num_tel : qui comporte les 5 premier numéros sans le 0
    (0684123456 -> 68412)
    num_departement : le numero de département associé au numéro
    nom_departement : assez explicite

    l'utilisateur à partir d'un formulaire HTML saisie un numéro de téléphone (évidement en entier) que je récupère afin de lui renseigner le département.

    ma requete se présente donc sous la forme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    SELECT *
    FROM Info_dept
    WHERE ................
    vous comprendrez que les ............. représentent mon blocage.

    Merci de bien vouloir m'aider

  2. #2
    Membre régulier Avatar de reno_tidus
    Profil pro
    Inscrit en
    Août 2007
    Messages
    132
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 132
    Points : 122
    Points
    122
    Par défaut
    Récupère les 5 premièr chiffre que l'utilisateur a saisi dans ton HTML puis concatène a cela une * puis essai
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    WHERE num_tel LIKE la_chaine (ex : 68412*)

  3. #3
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 111
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 111
    Points : 28 466
    Points
    28 466
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WHERE num_tel LIKE '%' || :var || '%'

  4. #4
    Membre régulier Avatar de reno_tidus
    Profil pro
    Inscrit en
    Août 2007
    Messages
    132
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Août 2007
    Messages : 132
    Points : 122
    Points
    122
    Par défaut
    autemps pour moi, il est vrai qu'en SQL le caractère siginfiant n'importe quel chaine est % et non *.

    Mais dans ce cas, il serait plus juste de récupérer le N° saisie d'en extraire les caractère 2 à 6 avec la fonction substr (dont voici un exemple en php)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $var = substr(tel(champ_thml), 1,5);
    puis dans la requête, faire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    SELECT * FROM Info_dept
    WHERE num_tel LIKE $var%

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

    Informations forums :
    Inscription : Septembre 2006
    Messages : 57
    Points : 29
    Points
    29
    Par défaut
    Merci beaucoup pour vos aides tout se passe bien voici le code que cela me donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    num_tel=request.Form("num_tel")
    tel_reduit=mid(num_tel,2,5)
    A bientot

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

Discussions similaires

  1. [RegEx] Pregmatch sur un numéro de téléphone international
    Par zeflex dans le forum Langage
    Réponses: 5
    Dernier message: 14/08/2013, 16h36
  2. Requete SQL qui ne retourne rien alors que ma table n est pas vide
    Par adelsunwind dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 02/06/2009, 19h16
  3. [RegEx] Résultat d'un regexp sur un numéro de téléphone
    Par Invité dans le forum Langage
    Réponses: 2
    Dernier message: 27/06/2008, 21h57
  4. Réponses: 28
    Dernier message: 23/08/2007, 11h19
  5. no such table: carte alors que cette table existe
    Par Bubble724 dans le forum SQLite
    Réponses: 3
    Dernier message: 13/07/2007, 22h04

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