24. april 2008 - 12:57Der er
4 kommentarer og 1 løsning
Pagination - eller hente bestemte rækker fra en mysql query?
Jeg skal fyre en SQL statement af mod min database, hvor jeg gerne vil hente nogle bestemte rækker fx. række 25-50 fra en query til brug for at paginere de data jeg senere vil præsentere på min webside. Hvordan gør jeg?
Min sql query ser sådan ud:
SELECT Products.ProductID, Products.CategoryID, Products.Title, Categories.Title AS CategoryTitle FROM Products INNER JOIN Categories ON Products.CategoryID = Categories.CategoryID;
Hvordan får jeg valgt bestemte rækker fra min query? Altså et eller andet i stil med "select * from table where rows between 25 and 50".
Jeg prøver engang. Hvis det er så simpelt er det jo dejligt. Jeg frygtede for at skulle benytte en masse nørdede mysql funktioner som sql_found_rows(), mysql_num_rows() og mysql_data_seek().
Offtopic: Tror jeg nok man siger at man lige skal huske en order by, når man bruger limit.. især til pagination, så man man er sikker på de kommer i samme rækkefølge anden gang.
jacob> præcis ... man skal huske ORDER BY, så man altid får præcis samme rækkefølge, ellers får man nogle underlige resultater ;)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.