ORDER BY FIELD ne marche pas correctement

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : ORDER BY FIELD ne marche pas correctement

par worm1 » 29 juil. 2008, 17:43

Merci, je vais regarder ça :wink:

J'ai essayé avec

Code : Tout sélectionner

ORDER BY %.$variable.%
Le résultat est le même que si je n'utiisais pas ORDER BY ...

ca me retourne

Code : Tout sélectionner

voiture voiture noire voiture noire jolie voiture bleu voiture rouge
pour le fulltext ma base n'est pas adapté pour l 'utiliser...

Bon bah finalement en triturant la fonction ORDER BY FIELD ,j'ai trouvé quelque chose qui me plait :)

Merci pour votre aide.

par Victor BRITO » 29 juil. 2008, 16:26

J'ai un petit doute sur ta méthode. Si tu veux faire des recherches avec des ordres de pertinence, fulltext, match et compagnie ne serait-il pas mieux adapté ?
Avec une recherche dans le manuel de MySQL, c'est encore mieux : http://dev.mysql.com/doc/refman/5.0/fr/ ... earch.html. ;)

par AB » 29 juil. 2008, 16:23

J'ai un petit doute sur ta méthode. Si tu veux faire des recherches avec des ordres de pertinence, fulltext, match et compagnie ne serait-il pas mieux adapté ?

par _activmik » 29 juil. 2008, 16:08

Et si tu fais un

Code : Tout sélectionner

ORDER BY %.$variable.%
?

par worm1 » 29 juil. 2008, 15:58

je voudrais faire une recherche par ordre de pertinence, par exemple si tu cherches "voiture noire jolie" ,afficher au début les résultats avec "voiture noire jolie" l'un a coté de l'autre et ensuite les produit qui on "voiture noire" et ensuite "voiture avec n importe quoi derriere" ou "noire avec n importe quoi derriere" ou "jolie "avec n importe quoi derriere". c plus clair ?

par _activmik » 29 juil. 2008, 15:29

Apparemment il te trie d'abord les fields de NOM puis ce que tu lui donnes :'voiture noire jolie' etc...
Quelle est ta logique de tri, peut-être que ta requête n'est pas adaptée ?!

ORDER BY FIELD ne marche pas correctement

par worm1 » 29 juil. 2008, 15:20

Chose promise chose due, j'ouvre un nouveau sujet pour mon problème avec FIELD :)


Voilà le bout de ma requete sql pour ordonner les resultats !

Code : Tout sélectionner

...ORDER BY FIELD(NOM,'voiture noire jolie','voiture noire','voiture')ASC";
Avec cette requete j'obtiens les resultats suivants:

Code : Tout sélectionner

voiture bleu voiture rouge voiture noire jolie voiture noire voiture

mais je voudrais :

Code : Tout sélectionner

voiture noire jolie voiture noire voiture voiture bleu voiture rouge
Pourquoi "voiture bleu" et "voiture rouge" sont avant "voiture noire jolie"?

Merci