|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : août 2006 Messages : 4 ![]() |
Bonjour à tous ,
Je cherche afficher des données dans l'ordre alphabétique à l'aide d'une requete SELECT sans tenir compte des accents. (pour que le é ne passe pas aprés le z par exemple). J'essaye d'utiliser sans succés un COLLATE : select * from note ORDER BY theme COLLATE French_CI_AI On dirais que cela n'a pas d'effet (meme si je remplace French_CI_AI par coco, le resultat est le meme). J'utilise sqlite 2.8.17 (version integrer à php 5.03). Une journée de recherche en vain...la doc de sqlite est trés succinte. Cela viendrait de la version de sqlite ? A propos comment mettre à jour sqlite dans php 5 ? MErci d'avance pour votre aide. |
|
|
00
|
|
|
#2 |
|
Invité de passage
![]() Inscription : août 2006 Messages : 4 ![]() |
JE ne savais pas que l'on pouvez utiliser des fonctions php dans les requetes de sqlite. C'est en faite trés simple lorsque l'on sait cela. Il suffit d'utiliser la fonction erg_replace de php pour enlever les accents, de trier par rapport à cette collone et ensuite d'afficher la collone originale (afin de conserver les accents à l'affichage). Ce qui donne :
select ID,php ( 'ereg_replace' , '(é|è)' , 'e' , theme ) AS theme_en,theme,titre,lier,chemin,strftime( '%d/%m/%Y',date) as date_fr from note WHERE theme LIKE '".$alpha."%' ORDER BY theme_en Les parties interressantes sont en gras. Cette solution est un peu gourmande en terme de perf., si qqn en à une meilleur, je suis preneur |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com