Balades En Normandie

Requête MySql imbriquée

Petite curiosité en requête MySql pour les curieux de programmation :

Pour la page d’accueil de BaladesEnNormandie.fr (version ordi), je souhaitais afficher des extraits d’articles du blog des catégories Coup d’Oeil et Randonnée.

Jusque là pas de problème pour la requête MySql sur la table WordPress du blog.

Mais je voulais que ces extraits soient piochés dans les derniers articles mis en ligne, mais aussi qu’ils soient pris au hasard dans ces derniers articles mis en ligne !

La solution s’est trouvée dans une requête imbriquée :

$query= "SELECT * FROM (SELECT wp_posts.ID AS id, wp_posts.post_content AS content, wp_term_relationships.term_taxonomy_id AS relation FROM wp_posts,wp_term_relationships WHERE wp_posts.ID=wp_term_relationships.object_id AND wp_posts.post_author=1 AND wp_posts.post_content != '' AND wp_posts.post_status != 'trash' ORDER By id DESC LIMIT 40) AS lastest ORDER BY RAND()";

Dans la parenthèse, je sélectionne mes champs pour les 40 derniers articles. Le résultat est ensuite ordonné de manière aléatoire. Tout ça dans une seule requête MySql ! Bravo MySql !

Laisser un commentaire