recherche SQL - SQL/NoSQL - Programmation
Marsh Posté le 10-05-2006 à 17:31:28
pour ta première question, je ne connais pas de manière plus efficace.
pour ta seconde question tout dépend du sgbd que tu utilises, c'est soit la création d'une fonction dédiée soit l'utilisation d'une fonction déjà intégrée au sgbd comme TRANSLATE pour Oracle.
Marsh Posté le 10-05-2006 à 18:17:10
Pour la question 1, merci, pour la seconde Mysql (mysql_query )
Merci
Marsh Posté le 11-05-2006 à 14:56:33
pour la question 1, tu mets un index fulltext qui sera certainement plus efficace qu'un like sur le long terme. Et selon ton besoin et volumetrie, il faudra sans doute passer à plus serieux comme methode.
Et pour le stockage des mots, perso je vire les accents pour les recherches. Mais dans ton cas, ca t'oblige à avoir un champ avec le mot d'origine et un second avec le preparé pour la recherche.
Marsh Posté le 11-05-2006 à 16:13:03
Merci, mes champs sont déjà en fulltext (match et against inside).
Donc je suis obligé de rentré mes mots tels quels dans la BDD.
Code :
|
et non pas
Code :
|
Marsh Posté le 11-05-2006 à 17:13:51
on ne mets pas de htmlentities dans la base. Tu transformes à la volée pour l'affichage mais pas avant.
Marsh Posté le 11-05-2006 à 18:48:43
Salut,
je pensais, beaucoup font ca (ce qui ne veut pas dire que c'est bien )
Marsh Posté le 10-05-2006 à 15:16:45
Salut,
une question que je me pose. Imaginons que j'ai ca dans ma base :
Je veux afficher tous les mots commencant par 'a'. Est-ce optimisé de faire un :
N'y a t-il pas une solution moins gourmande (:D) ?
Autre question, est-il judicieux de faire un :
En effet, pour une recherche si mon champs contient des accents, cela va être ennuyeux, non ?
Notamment si on veut sortir "pépé" en tappant "pepe".
Merci
Message édité par $man le 10-05-2006 à 15:44:21