Précédent   Forum des professionnels en informatique > Bases de données > MySQL > Requêtes
Requêtes Forum d'entraide sur les requêtes MySQL
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 09/05/2011, 17h13   #1
Invité de passage
 
Inscription : mai 2011
Messages : 4
Détails du profil
Informations forums :
Inscription : mai 2011
Messages : 4
Points : 0
Points : 0
Par défaut Recuperer les ID_USER

Bonjour j'ai une table qui ressemble a ceci :

Citation:
ID_USER | INTERETS
10 | roller;peinture;couture
11 | couture;sport;tele
12 | television
13 | NULL
14 | couture;foot
Imaginons que je souhaites récupérer les ID_USER qui ont en commun au moins un mot contenu dans INTERETS avec le ID_USER 14.

Imaginons que l'on prend le ID_USER 14 on devrait voir ressortir 11 et 10 car couture est présent dans les 2.

J'ai fait une requête de ce style la

Code :
1
2
3
4
5
SELECT DISTINCT ID_USER 
FROM 'matable' 
WHERE INTERESTS LIKE %couture% 
  AND ID_USER!=14 
  AND INTERESTS!= NULL
Mais le résultat est un peu aléatoire

Merci de votre aide
achenault est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/05/2011, 19h33   #2
Membre confirmé
 
Inscription : novembre 2007
Messages : 134
Détails du profil
Informations forums :
Inscription : novembre 2007
Messages : 134
Points : 213
Points : 213
Bonjour,
Réessayer ainsi :
Code :
1
2
3
4
SELECT DISTINCT ID_USER FROM 'matable' 
WHERE INTERESTS LIKE '%couture%' 
AND ID_USER <> 14 
AND INTERESTS IS NOT NULL
Cependant je ne suis pas certain de ce que vous voulez faire, je n'ai que réécrit votre requête, à voir ...
patic est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/05/2011, 20h00   #3
Invité de passage
 
Inscription : mai 2011
Messages : 4
Détails du profil
Informations forums :
Inscription : mai 2011
Messages : 4
Points : 0
Points : 0
et bien en fait je cherche a recuperer les lignes qui contiennent le mot clé "couture" par exemple.
achenault est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/05/2011, 14h52   #4
Modérateur
 
Avatar de CinePhil
 
Homme Philippe Leménager
Ingénieur d'études en informatique
Inscription : août 2006
Messages : 11 000
Détails du profil
Informations personnelles :
Nom : Homme Philippe Leménager
Âge : 48
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur d'études en informatique
Secteur : Enseignement

Informations forums :
Inscription : août 2006
Messages : 11 000
Points : 18 265
Points : 18 265
Envoyer un message via MSN à CinePhil
Tu as mal structuré ta BDD au départ donc tu as des problèmes !
Tu aurais dû avoir une table des centres d'intérêt et une table associative entre les users et les centres d'interêt.

Maintenant, si ton besoin n'est pas plus compliqué que ça :
Citation:
je cherche a recuperer les lignes qui contiennent le mot clé "couture"
cette requête toute simple devrait faire l'affaire :
Code :
1
2
3
SELECT ID_USER, INTERETS
FROM INTERESTS
WHERE INTERETS LIKE '%couture%'
Au passage, on nomme en principe les tables au singulier. Et pourquoi mélanger l'anglais et le français (INTERESTS, INTERETS) ?
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique.
Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework...
« Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française !
Linuxiens, comptez-vous !
CinePhil est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h04.


 
 
 
 
Partenaires

Hébergement Web