TRIER les résultats d'une requête selon (...)
Posté : 06 août 2005, 12:48
Bonjour à tous.
Voilà j'ai une petite question. J'ai la requête suivante:
Et je voudrait pouvoir ordonner mes résultats de la manière suivante:
afficher d'abord les résultats pour msearch='".$mot_noAccent."', puis ceux pour jp='".$mot."' , ensuite ceux pour romaji='".$mot_romaji."' etc...
est-ce possible de faire ça en une seule requête? Jusqu'à présent je faisais plusieurs requêtes succesives, mais je pense qu'il y a surement un moyen de compacter tout ça.
Merci d'avance pour votre aide.
Voilà j'ai une petite question. J'ai la requête suivante:
Code : Tout sélectionner
$query_tout="SELECT id,fr,jp,romaji,kana FROM vocabulaire WHERE ";
$query_tout.="msearch='".$mot_noAccent."' ";//FR exact
$query_tout.="OR jp='".$mot."' ";//JP exact
$query_tout.="OR romaji='".$mot_romaji."' ";//ROMAJI exact
$query_tout.="OR kana='".$mot."' ";//KANA exact
//--//
$query_tout.="OR msearch LIKE'".$mot_noAccent." %' ";//FR en première position
//--//
$query_tout.="GROUP BY id ORDER BY LENGTH(fr) ASC LIMIT 3000 ";afficher d'abord les résultats pour msearch='".$mot_noAccent."', puis ceux pour jp='".$mot."' , ensuite ceux pour romaji='".$mot_romaji."' etc...
est-ce possible de faire ça en une seule requête? Jusqu'à présent je faisais plusieurs requêtes succesives, mais je pense qu'il y a surement un moyen de compacter tout ça.
Merci d'avance pour votre aide.