29. maj 2005 - 07:51Der er
6 kommentarer og 1 løsning
Find nyeste indlæg i forum og GROUP BY
Hej flg. $nye_ind = mysql_query("SELECT `id`, `kat`, LEFT(indlaeg, 120) as `txt` FROM `". $forum_inlaeg ."` WHERE `ref` != 0 AND `public` = 1 GROUP BY `ref` ORDER BY `tid` DESC LIMIT 0,5") or die (mysql_error());
finder godt nok de tråde hvor der er indlæg, men det er altid første indlæg som vises. Skal jeg lave en ny query i min while, for at hente nyeste indlæg?
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Mysql tillader mærkværdigvis at bruge et felt (indlaeg), som ikke står i GROUP BY listen, og som heller ikke bruges i en aggregatfunktion. Det er bestemt ikke alle SQL-er, der gør det - det giver nemlig li'som ingen mening.
Du kan klare det med en ekstra forespørgsel, men må jeg foreslå, at du tilføjer en ny tabel, der indeholder disse oplysninger, herunder nyeste indlæg for alle tråde. Den skal opdateres ved hvert nyt indlæg, men vil gøre forespørgsler hurtigere (og nemmere). Det er formentlig mange gange flere du skal vise listen, end du skal opdatere den.
Nej tak, ingen point. Men den bliver jo ikke større end antallet af tråde, ikke antallet af indlæg. Du behøver også kun ganske få oplysninger i den: tråd-id, nyeste indlæg-id. Og så er det måske oplagt at det bare bliver et ekstra felt i tråden.
hmhm, har fået lidt at tænke på :O) Umiddelbart, er jeg egentlig mest til en tabel, med id, kategori og tekst, som jeg så henter de nyeste fra. Takker for hjælp!!!
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.