Mik2000 Professor
06. august 2020 - 20:50 Der er 2 kommentarer og
3 løsninger

Select med limit og total

Jeg vil lave noget pagination (load flere fungerer ikke her da man nemt skal kunne hoppe x sider frem)

I den forbindelse har jeg nogle komplekse SQL sætninger som har en LIMIT

Er man virkelig nødt til at køre den komplekse SQL sætning igen eller som subquery med en COUNT(*) og uden limit for at få totalen, så man ved hvor mange sider der er

Eller findes der en smartere løsning?

Faldt over noget SELECT FOUND_ROWS() men det virkede til at være gammelt og umiddelbart giver den nu kun antallet af rækker fundet i limit sætningen

Håber der er en der kan hjælpe :)
arne_v Ekspert
06. august 2020 - 21:18 #1
Jeg kan ikke lige komme i tanke om andre maader en foerst en SELECT COUNT og saa en SELECT LIMIT.

Du maa kunne spare et roundtrip ved at lave de to SELECT i en SP.

Det kunne sikkert betale sig at cache resultatet af SELECT COUNT.

Husk at selvom der en 1000 raekker naar du laver SELECT COUNT saa kan der principely vaere 0 eller 2000 naar SELECT LIMIT udfoeres, hvis databasen modficeres heftigt.
Mik2000 Professor
07. august 2020 - 16:35 #2
Men der er vel ikke rigtig andre måder at lave pagination på vel?
arne_v Ekspert
07. august 2020 - 18:50 #3
Jeg tror at der er mange som laver paginering med:
* visning af interval
* frem
* tilbage
uden at give mulighed for vilkårlige hop.

Men paginering er et problem.
Mik2000 Professor
07. august 2020 - 22:51 #4
Ja det var selvfølgelig en mulighed - men så skal man alligevel vide om der er flere når for at vide om man skal vise en frem pil tænker jeg
arne_v Ekspert
08. august 2020 - 05:10 #5
Du kan jo hente 1 mere end du vil vise. Er den der, saa viser du "frem".
Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links

Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester





Premium
Test: Apples nye iPhone er bygget til fart og stil: Så gode er iPhone 12 og iPhone 12 Pro
Computerworld tester: IPhone 12 og iPhone 12 Pro er bygget til fart og til at se godt ud. Varen leveres stilsikkert, men noget er overset i farten.
Computerworld
Salling Group lukker stor online-satsning efter kun et år
Millionsatsningen Fillop lukker ved årets udgang. I stedet er supermarkeds-giganten Salling Group nu på vej med en række helt nye online-satsninger, der er affødt af coronakrisen.
CIO
Podcast: Hos Viking Life-Saving Equipment er it gået fra at være backend til at være noget, som kunderne spørger aktivt efter
Podcast, The Digital Edge: Viking leverer en stadig større del af deres produkt som en tjeneste. Som en del af tjenesten tager Viking ansvar for sikkerheden ved at levere, dokumentere og vedligeholde det nødvendige sikkerhedsudstyr. Hør hvordan Henrik Balslev senior digital director hos Viking har løftet den opgave.
Job & Karriere
Regner din ferie væk? Brug tiden på at søge en af disse otte stillinger, der er ledige netop nu
Det sjasker ned over hele Danmark. Du kan bruge de våde sommerdage på at søge et af disse otte job, der er ledige lige nu.
White paper
Minimér risikoen for kritiske GDPR-overtrædelser med Vulnerability Management
Selv mere end to år efter indførelsen af GDPR kræver det en målrettet og vedvarende indsats at overholde og blive ved med at overholde persondataforordningen. Det kan omvendt blive særdeles kostbart – og skade anseelse hos kunder og samarbejdspartnere – hvis man ikke yder denne indsats. Det er imidlertid klogt at løbende at målrette indsatsen effektivt. Dels ved at vurderer systemer løbende for sårbarhede samt at prioritere håndteringen af sårbarheder i forhold til risikoniveau. Hvilket er lettere sagt end gjort. I denne hvidbog kan du læse mere om, hvordan du griber GDPR-indsatsen effektivt an med Vulnerability Management.