Version complète: sur le forum Webmaster Hub : Forcer l'affichage d'un résultat avant les autres
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > SQL
captain_torche
Salut à tous !
J'ai une requête SQL qui m'affiche des articles en fonction de leur prix (tri croissant).
J'ai besoin de faire ressortir un élément en premier, quel que soit son prix.

Est-ce possible en SQL, ou vais-je devoir biaiser en PHP pendant le traitement du résultat ?
georges
salut,

- soit tu fais 2 requêtes distinctes afin d'afficher d'abord l'élément distinct puis les autres selon le prix.
- soit tu ajoutes un champ, ex, "tag" en tinyint(1) avec 0 par défaut pour tous les produits et 1 pour le produit à mettre en avant et ensuite tu fais une requête "order by tag desc, prix asc"

Voilà ce que je ferais smartass.gif
captain_torche
Sauf que je ne peux pas toucher à la structure des tables, et que j'aimerais éviter d'avoir à faire deux requêtes wink.gif
Mais merci quand même.
georges
bon ben :
CODE
if ($id_produit!=$monproduit){$liste_autres.=$resultat_requete;}
else {$premier=$resultat_requete;}

echo $premier,'<br>',$liste_autres;
sarc
georges, ça je pense qu'il aurait pu le trouver, il cherche justement à faire ça directement avec SQL wink.gif

J'ai une solution qui pourra peut-être t'aller si c'est pas trop complexe :

CODE
SELECT pseudo, age, pseudo='Dupont' AS coltri FROM membre ORDER BY coltri DESC

Il va tester la valeur de pseudo, mettre 0 ou 1 dans une nouvelle colonne appelée coltri, et ensuite trier cette colonne pour te retirer en premier la ligne exacte que tu voulais !

Voilà j'espère que ça t'ira comme ça wink.gif
captain_torche
Je teste de suite, je te tiens au courant !

[Edit] : Super ! C'est exactement ce qu'il me fallait !
Merci, sarc !
georges
CITATION
georges, ça je pense qu'il aurait pu le trouver, il cherche justement à faire ça directement avec SQL


ooops, désolé blushing.gif , je tournerais ma souris sur le clavier 3 fois avant de poster la prochaine fois wacko.gif

Edit : et vu que ça marche, j'enregistre l'astuce car je ne la connaissais pas du tout, merci à Sarc tongue.gif
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.