sql >> Database teknologi >  >> RDS >> Database

Sådan rundes et tal op til det nærmeste heltal i SQL

Problem:

Du vil runde et tal op til det nærmeste heltal.

Eksempel:

Vores database har en tabel med navnet husleje med data i følgende kolonner:id , city , area , og bikes_for_rent .

id by område cykler_til_udlejning
1 Los Angeles 1302.15 1000
2 Føniks 1340,69 500
3 Fargo 126,44 101

Lad os vise hver bys navn sammen med forholdet mellem dens areal og antallet af cykler til leje. Dette forhold skal være et heltal.

Løsning:

SELECT city, CEILING(area/bikes_for_rent) AS ratio
FROM rent;

Forespørgslen returnerer hver by med forholdet som et heltal af afrundet området pr. cykel.

id by forhold
1 Los Angeles 2
2 Føniks 3
3 Fargo 2

Diskussion:

Ligesom sit modstykke gulv er loft en matematisk operation, der tager et tal og runder det op til nærmeste heltal. For eksempel er loftet på 5 5, og det samme er loftet på 4.1.

SQL bruger CEILING funktion til at udføre denne beregning. Det kræver et enkelt argument:kolonnen, hvis værdier du gerne vil runde op til nærmeste heltal.

I vores eksempel vil vi gerne beregne, hvor mange kvadratmeter (rundet op til nærmeste heltal) der er pr. cykel. I vores eksempel brugte vi CEILING sådan:CEILING(area/bikes_for_rent) ). Dette returnerer et heltalsresultat, ikke en float.


  1. 3 metoder til at forbinde MDF-fil til SQL Server

  2. Use Cases for SQL Server MERGE Statement:Synkronisering af online- og historietabeller

  3. Hvordan bruger jeg password hashing med PDO for at gøre min kode mere sikker?

  4. 2 måder at liste alle lagrede procedurer i MySQL