Gå til innhold

Anbefalte innlegg

Jeg trenger hjelp med et mattestykke hvor jeg regner ut hvor mange rader en tabell har og deretter runder av til nærmeste og høyeste tier.

 

Som for eksempel, jeg har 14 rader i en tabell, dette skal rundes av til 20 (siden 20 er høyeste og nærmeste tier), 17 rader skal også til 20, 24 skal rundes av til 30, 34 skal rundes av til nærmeste 40, 39 skal også rundes av til 40 også videre.

 

Har dere forslag til hvordan dette kan fullføres?

 

Har prøvd med:

 

SELECT ROUND(contact_id / 10) * 10 FROM sd_contacts ORDER BY contact_id DESC LIMIT 1

 

Men dette funker ikke så veldig bra på alle tabeller. Har da selvsagt byttet ut felt- og tabellnavnene, men tenker da på at jeg får 0 når jeg har 2 rader (dette skal jo rundes av til 10) og får 30 når jeg har 16 rader (siden det er 16 rader skal det jo rundes av til 20).

 

Noen som kan hjelpe meg videre?

Lenke til kommentar
Videoannonse
Annonse
CEIL for å runde oppover, FLOOR for nedover er standard i de fleste språk

6416033[/snapback]

 

Har du forslag til hvordan jeg kan få dette til da?

 

Har sett i manualen, men eksempelet der var til lite hjelp!

Lenke til kommentar

Bytt ut ROUND med CEIL, da vil 0,2 bli rundet av til 1 og 1,6 bli rundet av til 2. Er ikke helt sikker, men i java så må du ihvertfall si at ett av tallene i ett delestykke er et flyttall, ellers vil heltallsdivisjon bli brukt (dvs at det blir rundet ned før du kjører CEIL på et heltall. Det kan kjappt fikses ved å skrive 10.0 istedet for 10 når du deler, eller ::numeric e.l.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...