|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre à l'essai
![]() Inscription : octobre 2005 Messages : 122 ![]() |
Bonjour,
Je cherche à faire une requête qui sort un peu de l'ordinaire... J'aurais besoin d'un petit coup de main si ça ne vous dérange pas. Voici ma situation : J'ai une table sql "members" qui contient, entre autres, un champ appellé "read". Dans ce champ, sont stockés un certain nombre d'id séparés par des virgules (plus précisément sous cette forme : "$id1, $id2, $id3, $id4,"). Je cherche à faire un requête en php qui me permettra de voir si $id fait partie des id contenus dans le champ "read". Pour ça je pense qu'il faut découper les id sur les virgules... Mais je ne sais pas du tout quelle procédure suivre. Si vous pouviez m'aiguiller un peu Merci par avance.
__________________
http://www.studiz.fr/ |
|
|
00
|
|
|
#2 |
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Pour MySQL, je pense qu'il existe plus intéressant et direct : la fonction find_in_set.
Exemple (non testé) : Code :
$sql = mysql_query("SELECT * FROM ma_table WHERE FIND_IN_SET($id, read) <> 0"); |
|
|
00
|
|
|
#3 |
|
Membre à l'essai
![]() Inscription : octobre 2005 Messages : 122 ![]() |
En effet, ça parait simple
Je me pose juste une question : imaginons que le champ contienne les id suivants : "45, 78, 5, 17," Si on fait FIND_IN_SET(7, read), est-ce qu'il ne risque pas de nous retourner 78 et 17, alors que je veux vérifier si le chiffre 7 existe ?
__________________
http://www.studiz.fr/ |
|
|
00
|
|
|
#4 | |
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Citation:
Par contre votre formatage particulier des données ne va pas sans poser quelques soucis, il faudrait se débarrasser au passage des espaces, comme ceci : Code :
$sql = mysql_query("SELECT * FROM ma_table WHERE FIND_IN_SET($id, REPLACE(read, ' ', '')) <> 0");
|
|
|
|
00
|
|
|
#5 | |
|
Membre à l'essai
![]() Inscription : octobre 2005 Messages : 122 ![]() |
Citation:
Qu'est-ce que vous entendez par "revoir la conception" ?
__________________
http://www.studiz.fr/ |
|
|
|
00
|
|
|
#6 | |
|
En attente de confirmation mail
![]() Inscription : juin 2002 Messages : 6 164 ![]() |
Citation:
Un exemple sera certainement plus parlant : une gestion de groupes d'utilisateurs (les clés primaires sont en gras et les clés étrangères en italique).
|
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com