Requête MySQL

Par Wael83, il y a 13 ans


Base de données MySQL

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

Tackacoder, il y a 13 ans

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, il y a 13 ans

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

Benjamin Derepas, il y a 13 ans

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