>>. Ten eerste, wil ik het aantal teruggekeerde maxrows beperken
Ideaal gezien is dat iets die op het db niveau zou moeten worden gedaan. Het kon ook in de code van het CF worden gedaan. Maar er is geen punt oplopend de overheadkosten van het terugtrekken van gegevens die niet zullen gebruikt worden.
U kon een afgeleide lijst waarschijnlijk gebruiken om de resultaten in SQL te beperken. Met andere woorden, selecteer de HOOGSTE 10 updates eerst, dan TREED aan de andere lijsten toe. De nauwkeurige syntaxis en de structuur zijn afhankelijk gegevensbestand. Het gebruiksBOVENKANT van lidstaten SQL, MySQL gebruiksGRENS, enz.….
Ook, impliceert om het even welke „bovenkant x“ verslagenscenario het opdracht geven van de tot verslagen door „één of andere kolom“. Ik veronderstellend u ben behoefte de recentste 10 updates…? Sommige gegevensbestanden beperken welke handelingen u in een afgeleide lijst kunt uitvoeren. Zo is het zeer waarschijnlijk uw daadwerkelijke sql zal vereisen het knijpen…
SELECTEER s.sID, s.wUserID, s.sStatus ..... Andere Kolommen…
VAN
(
SELECTEER BOVENKANT 10 sID, wUserID, sStatus, ...... OtherColumns….
VAN statusupdates
ORDE DOOR sCreatedDate DESC
) s
De LINKERZIJDE SLUIT zich aan gebruikers bij u OP s.wUserID=u.wUserID
De LINKERZIJDE SLUIT zich aan bij commentaren c OP c.inreplyto = s.sID
De LINKERZIJDE SLUIT zich aan gebruikers bij Cu OP c.wUserID=cu.wUserID
ORDE DOOR s.sCreatedDate DESC, s.sID
>> Ten tweede, zou ik een „telling“ voor het aantal commentaren voor elke status willen toevoegen.
Wilt u de telling vóór OF na de commentaren tonen. Als u het na de commentaren wilt tonen, dan is gebruiken van een cfset binnen de lijn fijn. Als u het moet tonen _before_ de commentaren, dan duidelijk zult u de totalen voor tijd moeten kennen.