Freigeben über


ceiling-Funktion

Gilt für: Häkchen ja Databricks SQL Häkchen gesetzt ja Databricks Runtime 11.3 LTS und höher

Gibt die kleinste Zahl zurück, die nicht kleiner als expr gerundet auf targetScale Ziffern relativ zum Dezimalpunkt ist. Diese Funktion ist ein Synonym für die ceil-Funktion.

Syntax

ceiling(expr [, targetScale])

Argumente

  • expr: Ein Ausdruck, der in einen numerischen Wert ausgewertet wird.
  • targetScale: Ein optionaler INTEGER-Literal größer als -38 gibt an, wie viele Ziffern nach dem Dezimalpunkt nach der Aufrundung angegeben werden.

Gibt zurück

Wenn keine targetScale angegeben wird:

  • Wenn expr gleich DECIMAL(p, s) ist, wird DECIMAL(p - s + 1, 0) zurückgegeben.
  • In allen anderen Fällen wird ein BIGINT-Wert zurückgegeben.

Wenn targetScale angegeben und expr Folgendes ist:

  • TINYINT

    Gibt einen DECIMAL(p, 0)-Wert mit p = max(3, -targetScale + 1) zurück.

  • SMALLINT

    Gibt einen DECIMAL(p, 0)-Wert mit p = max(5, -targetScale + 1) zurück.

  • INTEGER

    Gibt einen DECIMAL(p, 0)-Wert mit p = max(10, -targetScale + 1)) zurück.

  • BIGINT

    Gibt einen DECIMAL(p, 0)-Wert mit p = max(20, -targetScale + 1)) zurück.

  • FLOAT

    Gibt einen DECIMAL(p, s)-Wert mit p = max(14, -targetScale + 1)) und s = min(7, max(0, targetScale)) zurück.

  • DOUBLE

    Gibt einen DECIMAL(p, s)-Wert mit p = max(30, -targetScale + 1)) und s = min(15, max(0, targetScale)) zurück.

  • DECIMAL(p_in, s_in)

    Gibt einen DECIMAL(p, s)-Wert mit p = max(p_in - s_in + 1, -targetScale + 1)) und s = min(s_in, max(0, targetScale)) zurück.

Wenn targetScale negativ ist, erfolgt die Rundung an -targetScale Ziffern links neben dem Dezimalpunkt auf.

Der Standardwert targetScale ist 0, der auf die nächste größere integrale Zahl gerundet wird.

Beispiele

> SELECT ceiling(-0.1);
 0

> SELECT ceiling(5);
 5

> SELECT ceiling(5.4);
 6

> SELECT ceiling(3345.1, -2);
 3400

> SELECT ceiling(-12.345, 1);
 -12.3