Bonjour,

petite question concernant une requête MySQL
(je simplifie la demande) :

j'ai une table contenant des annonces
3 colonnes :
id | nom | pro (1 ou 0)

je les affiche par id DESC
mais je voudrai afficher en priorité les 3 premières "pro" en RAND() et ensuite les annonces dans l'ordre normal (id DESC)sans tenir compte des pro ou pas pro

  1. est ce que c'est possible en 1 seule requete ?
  2. si 1=oui, alors comment faire ?

merci bcp !

3 réponses


Bonjour,
Je ne pense pas que ce soit possible en 1 seule requête, vu que tu as 2 ORDER différents.
Le mieux, c'est de faire 2 requêtes, la première avec ton RAND() et un LIMIT 3
et une seconde avec toutes tes données

Après, je ne suis pas expert MySQL, mais je ferais comme ça.

Edouard

Wael83
Auteur

Merci pour ta réponse,
mais en fait le problème c'est que avec 1= requêtes, les annonces du dessus seront en doublon avec celle du dessous
je pense avoir une piste (utiliser UNION)
merci quand meme

Si tu as des boulons, utilises le DISTINCT pour les supprimer !