Sdílet prostřednictvím


Funkce ceiling

Platí pro: zaškrtnutí označeného ano Databricks SQL zaškrtnutí označeného ano Databricks Runtime 11.3 LTS a vyšší

Vrátí nejmenší číslo, které není menší než expr zaokrouhleno nahoru na číslice vzhledem k targetScale desetinné bodě. Tato funkce je synonymem funkce ceil.

Syntaxe

ceiling(expr [, targetScale])

Argumenty

  • expr: Výraz, který se vyhodnotí jako číselný.
  • targetScale: Volitelný literál INTEGER větší než -38 určení, kolik číslic za desetinnou čárkou se zaokrouhlí nahoru.

Návraty

Pokud není uvedena žádná targetScale hodnota:

  • Pokud expr je DECIMAL(p, s), vrátí DECIMAL(p - s + 1, 0).
  • Pro všechny ostatní případy vrátí funkci BIGINT.

Pokud targetScale je zadán a expr je:

  • TINYINT

    Vrátí s DECIMAL(p, 0) .p = max(3, -targetScale + 1)

  • SMALLINT

    Vrátí s DECIMAL(p, 0) .p = max(5, -targetScale + 1)

  • INTEGER

    Vrátí s DECIMAL(p, 0) .p = max(10, -targetScale + 1))

  • BIGINT

    Vrátí s DECIMAL(p, 0) .p = max(20, -targetScale + 1))

  • FLOAT

    Vrátí s DECIMAL(p, s) p = max(14, -targetScale + 1))s = min(7, max(0, targetScale))

  • DOUBLE

    Vrátí s DECIMAL(p, s) p = max(30, -targetScale + 1))s = min(15, max(0, targetScale))

  • DECIMAL(p_in, s_in)

    Vrátí s DECIMAL(p, s) p = max(p_in - s_in + 1, -targetScale + 1))s = min(s_in, max(0, targetScale))

Pokud targetScale je záporné zaokrouhlení na -targetScale číslice vlevo od desetinné čárky.

Výchozí hodnota targetScale je 0, což zaokrouhlí nahoru na další větší celočíselné číslo.

Příklady

> 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