Bonjour
Je dispose de deux tables comme ceci :
tab1 :
idC | nom
tab2
idV | date | nbP | idC
Avec une petite jointure avec tab1.idC = tab2.idC
Dans ma tab2 je stocke tous les jours nbP. Ensuite je l'affiche dans un tableau.
J'aimerais sélectionner les 30 derniers enregistrements. J'ai fais comme ca, mais cela ne marche pas. J'ai bien les 30 derniers réenregistrements mais dans le sens inverse. On commence par la date la plus récente or il fraudais commencer par la date la plus vielle dans mon tableau.
Il faudrais donc refaire un order by idV dans ma requête mais comment ?
SELECT *
FROM tb2
JOIN tab2 ON tab2.idC = tab1.idC
ORDER BY idV DESC
LIMIT 0 , 30
Cordialement :)
Est ce que :
SELECT *
FROM tb2
JOIN tab2 ON tab2.idC = tab1.idC
WHERE idV IN (SELECT idV from tb2 order by idV DESC)
ORDER BY idV
LIMIT 0 , 30
Est une bonne solution ?
salut, je pense que le LIMIT 0.30 ça va mais je pense que ton order devrais être quelque chose order BY idV DESC comme ça tu as du plus grand au plus petit et donc les 30 derniers