Jag försöker fixa ihop ett paging som inte hämtar hem alla 250 inlägg i array:n utan vid sida ett så hämtar den Top 50 och vid sida två top 51-100...men det verkar inte fungera som sagt.
Jag får väl göra så som du sa att jag hämtar in Top 100 på andra sidan och börjar sedan på 51. Kan man på något sätt skala bort de 50 första posterna i en array så att den 51:a blir på den första positionen i array:n?
------------------
Alltid lär man sig något nytt varje dag...
Återigen...riktigt smart lösning av dig LarsG...:)
Men jag får det inte riktigt att fungera. Den skriver ut allt men de första tio posterna är med
strSQL = "SELECT TOP 50 ff.msgId, ff.msgFrom, ff.msgTopic, ff.msgRead, ffup.msgUpdate " & _
" FROM forum AS ff INNER JOIN forumUpdate AS ffup ON ff.msgID = ffup.msgID " & _
"WHERE ff.Thread_ID=0 NOT IN " & _
"(SELECT TOP 10 ff.msgId FROM forum WHERE ff.Thread_ID=0 ORDER BY ffup.msgUpdate DESC) " & _
"ORDER BY ffup.msgUpdate DESC"
Thread_ID = 0 står för huvudinlägg.
------------------
Alltid lär man sig något nytt varje dag...
strSQL = "SELECT TOP 50 ff.msgId, ff.msgFrom, ff.msgTopic, ff.msgRead, ffup.msgUpdate " & _
" FROM forum AS ff INNER JOIN forumUpdate AS ffup ON ff.msgID = ffup.msgID " & _
"WHERE ff.Thread_ID=0 [b] and ff.msgID [/b]NOT IN " & _
"(SELECT TOP 10 ff.msgId FROM forum WHERE ff.Thread_ID=0 ORDER BY ffup.msgUpdate DESC) " & _
"ORDER BY ffup.msgUpdate DESC"
strSQL = "SELECT TOP 50 ff.msgId, ff.msgFrom, ff.msgTopic, ff.msgRead, ffup.msgUpdate " & _
" FROM forum AS ff INNER JOIN forumUpdate AS ffup ON ff.msgID = ffup.msgID " & _
"WHERE ff.Thread_ID=0 [b]AND ff.msgID[/b] NOT IN " & _
"(SELECT TOP 10 ff.msgId FROM forum WHERE ff.Thread_ID=0 ORDER BY ffup.msgUpdate DESC) " & _
"ORDER BY ffup.msgUpdate DESC"
------------------
<A HREF="http://cartman.nu" TARGET=_blank>
can i borrow your goat?
</A>
strSQL = "SELECT TOP 50 ff.msgId, ff.msgFrom, ff.msgTopic, ff.msgRead, ffup.msgUpdate " & _
" FROM forum AS ff INNER JOIN forumUpdate AS ffup ON ff.msgID = ffup.msgID " & _
"WHERE ff.msgId NOT IN " & _
"(SELECT TOP 10 ff.msgId FROM forum AS ff INNER JOIN forumUpdate AS ffup ON ff.msgID = ffup.msgID WHERE ff.Thread_ID=0 ORDER BY ffup.msgUpdate DESC) " & _
"AND ff.Thread_ID=0 ORDER BY ffup.msgUpdate DESC"
Nu verkar det som det fungerar...med din SQL-frågakonstruktion LarsG så kan man göra väldigt effektivt paging. Tack för att ni hjälpte mig.
------------------
Alltid lär man sig något nytt varje dag...
LarsGs variant kommer att söla ned mer än att hämta hem alla 250 inläggen och lägga dem i en array, om du kör mot Access.
Däremot under MS-SQL skulle den nog funka lite snabbare i en SP ;)
Jag testade den varianten när jag skulle fixa en paging till en sida som körs på chilliASP .... hej o hå så långsamt det gå.
Den varianten som jag har ligger under wF script är en variant som funkar ÄVEN på chilliASP
Men!!!
Den mest optimala pagingen, som jag testat, e gjord med ADODB.Recordset, och detta funkar inte så jäkla bra med chilliASP eftersom det inte har stöd för alla adodb.recordsetets metoder etc.
Om man nöjer sig med att endast ha << Föregående | Nästa >> som länkalternativ så funkar din top x historia mycket bra.
cya,
PatrikB
------------------
*Det tar sig sa han som hade eld i håret*
259 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849