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 SQL : SELECT * FROM annonce WHERE ..


Sujet :

Langage SQL

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Janvier 2008
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2008
    Messages : 1
    Points : 1
    Points
    1
    Par défaut REQUETE SQL : SELECT * FROM annonce WHERE ..
    Bonsoir,
    je recherche la syntaxe de la requete SQL /en gros jai un deux tables (BDD)

    candidat
    ( id ='1', villes = 'Paris,Lille' )

    annonce
    (id='1',ville='Lille)

    Je voudrais sélection les annonces dont la ville (annonce) est contenu dans le champs ville(candidat)

    SELECT * FROM annonce WHERE .........

    j'ai essayé avec des like des contains des requetes imbriquées mais rien ne marche....
    Merci d'avance pour votre aide .....
    Greg

  2. #2
    Expert éminent
    Homme Profil pro
    Big Data / Freelance EURL
    Inscrit en
    Mars 2003
    Messages
    2 124
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Big Data / Freelance EURL

    Informations forums :
    Inscription : Mars 2003
    Messages : 2 124
    Points : 7 291
    Points
    7 291
    Par défaut
    Ta table candidat n'est pas normalisée, tu ne devrais pas avoir 2 éléments dans le champ villes de la table candidat. Mais 2 lignes dans une table liste_villes_candidats.

    Il faudrait que tu indiques ton SGBDR.

    Si tu es sous Oracle et qu'on ne te permet pas de modifier ton modèle de données tu peux essayer:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    SELECT * 
    FROM Annonce 
    CROSS JOIN CANDIDAT 
    where candidat.id=1
    AND INSTR(candidat.villes,annonce.ville) >0
    Mais si c'était normalisée ça serait quand même plus propre. Tu vas me dire que c'est comme cela que les gens saisissent, mais rien n'empêche qu'au moment de la saisie les 2 villes soient dispatchées dans 2 lignes d'une table(j'espère que c'est ça l'excuse, car sinon cela a encore moins d'intérêt de ne pas normaliser)

    ça ferait
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    SELECT *
    FROM Annonce
    WHERE Annonce.ville in 
        (SELECT Villes 
         FROM liste_villes_candidats
         WHERE id=1
        )
    c'est quand même plus propre et plus lisible non ?

Discussions similaires

  1. Problème requete SQL select * from( select )
    Par yacinew dans le forum Bases de données
    Réponses: 8
    Dernier message: 12/04/2015, 07h14
  2. SELECT * FROM xx WHERE yy AND zz AND tt AND
    Par french-petzouille dans le forum Langage SQL
    Réponses: 3
    Dernier message: 12/03/2007, 09h52
  3. [sql][C#] requete sql select where
    Par Jessika dans le forum ASP.NET
    Réponses: 1
    Dernier message: 03/03/2007, 23h12
  4. Probleme Requete SQL SELECT
    Par paulo6907 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 28/10/2006, 11h07
  5. [POSTGRESQL] Requete SQL SELECT
    Par angusyoung34 dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 18/02/2006, 09h30

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