Requete mysql

Je sais que je me répète mais j'ai oublié ce que vous m'avez dit la dernière fois et je ne rettroube plus le message donc je repose la question : comment, grace à une requete mysql, puis-je connaitre les 5 plus récentes entrée en utilisant un champs date ou est-il plus préfèrable d'utiliser PHP et les ids ?

8 réponses

  1. Contributeur
    DESC comme DESCENDANT pour dire de le faire en ordre inverse...en gros, soit tu prend les 5 derniers et tu tries dans l'ordre normal (ASC mais c'est par default) soit tu prends les 5 premiers mais tu tries en ordre inverse...

    Pourl a facilite d'ecriture, le trie normal et prendre les 5 dernier...pour l'efficacite en cas de grosses tables, tries a l'envers et prendre les 5 premiers (grosse table > 100 000 entrees pour commencer a voir des differences et encore des petites...)

    ö,ö
    \_/
    1. Contributeur
      Select top 5 * from matable sort by monchampdate;

      A quelques petit default de syntaxe parce que ca remonte, ca doit etre ca (sortby ou sort by? )

      ö,ö
      \_/
      1. Il y a une erreur mais je ne sais ce que c'est. ESt-tu sur du 'top 5 *' ?
    2. Mais cela ne me sort-il pas les 5 premiers ? Sinon merci mais puis-je utiliser cela avec autre chose que la date comme l'id ou autre ?
      1. Contributeur
        Ba les 5 premiers, tu as raison, il faut trier dans l'autre sens (reverse je crois)

        Bon apres courte verification,
        SELECT LAST 5 * FROM... SORT BY date;

        SELECT LAST 5 * FROM... ORDER BY date;

        SELECT FIRST 5 * FROM... SORT BY date DESC;

        SELECT FIRST 5 * FROM... ORDER BY date DESC;

        Theoriquement, elles marchent toutes ;-)

        ö,ö
        \_/
        1. Est-ce que ce code marcherait ? Le voilà :

          $requete = mysql_query("SELECT * FROM matable ORDER BY date");
          $num = 1;
          $count = mysql_query("SELECT COUNT * FROM matable");
          while($row = mysql_fetch_row($requete))
          {
          if($num >= ($count - 5))
          {
          ...
          }
          $num++;
          }
          1. Contributeur
            J'ai un peu oublie le PHP, mais je pense que oui, mais ca tirera plus au niveau temps qu'une belle requete SQL

            ö,ö
            \_/