Heim >Datenbank >MySQL-Tutorial >Wie unterscheiden sich die Funktionen CEILING() und FLOOR() von der Funktion ROUND() in MySQL?

Wie unterscheiden sich die Funktionen CEILING() und FLOOR() von der Funktion ROUND() in MySQL?

WBOY
WBOYnach vorne
2023-09-07 10:25:021549Durchsuche

Die Funktion

在 MySQL 中,CEILING() 和 FLOOR() 函数与 ROUND() 函数有何不同?

CEILING() gibt den kleinsten ganzzahligen Wert zurück, der nicht kleiner als X ist. Betrachten Sie das folgende Beispiel: Die Funktion

mysql> Select CEILING(3.46);
+---------------+
| CEILING(3.46) |
+---------------+
|             4 |
+---------------+
1 row in set (0.00 sec)  

mysql> Select CEILING(-6.43);
+----------------+
| CEILING(-6.43) |
+----------------+
|             -6 |
+----------------+
1 row in set (0.02 sec)

FLOOR() gibt den größten ganzzahligen Wert zurück, der nicht größer als X ist. Betrachten Sie das folgende Beispiel: Die Funktion

mysql> Select FLOOR(-6.43);
+--------------+
| FLOOR(-6.43) |
+--------------+
|           -7 |
+--------------+
1 row in set (0.00 sec)
 
mysql> Select FLOOR(3.46);
+-------------+
| FLOOR(3.46) |
+-------------+
|           3 |
+-------------+
1 row in set (0.00 sec)

ROUND() gibt X auf die nächste ganze Zahl gerundet zurück. Wenn das zweite Argument D angegeben wird, gibt die Funktion X gerundet auf D Dezimalstellen zurück. D muss positiv sein, sonst werden alle Ziffern rechts vom Dezimalpunkt entfernt. Betrachten Sie das folgende Beispiel:

mysql>SELECT ROUND(5.693893);
+---------------------------------------------------------+
|                    ROUND(5.693893)                      |
+---------------------------------------------------------+
|                           6                             |
+---------------------------------------------------------+
1 row in set (0.00 sec)  

mysql>SELECT ROUND(5.693893,2);
+---------------------------------------------------------+
|                   ROUND(5.693893,2)                     |
+---------------------------------------------------------+
|                          5.69                           |
+---------------------------------------------------------+
1 row in set (0.00 sec)

Anhand der obigen Definition und des Beispiels können wir die folgenden Unterschiede zwischen diesen drei Funktionen beobachten: Die Funktion

  • ROUND() rundet die Zahl abhängig vom zweiten Parameter D und der Zahl auf oder ab selbst (D die Zahl nach der Dezimalstelle >= 5 oder nicht). Die Funktion
  • FLOOR() rundet eine Zahl gegen Null und rundet dabei immer ab. Die Funktion
  • CEILING() rundet eine Zahl von Null weg und immer nach oben.
mysql> Select ROUND(1.415,2),FLOOR(1.415),CEILING(1.415);
+----------------+--------------+----------------+
| ROUND(1.415,2) | FLOOR(1.415) | CEILING(1.415) |
+----------------+--------------+----------------+
|           1.42 |            1 |              2 |
+----------------+--------------+----------------+
1 row in set (0.00 sec)

Das obige ist der detaillierte Inhalt vonWie unterscheiden sich die Funktionen CEILING() und FLOOR() von der Funktion ROUND() in MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen
Vorheriger Artikel:Hauptunterstützer von MySQLNächster Artikel:Hauptunterstützer von MySQL