Categorias:

Funções de expressão condicional

GREATEST

Retorna o maior valor de uma lista de expressões. GREATEST oferece suporte a todos os tipos de dados, inclusive VARIANT.

Consulte também:

GREATEST_IGNORE_NULLS

Sintaxe

GREATEST( <expr1> [ , <expr2> ... ] )
Copy

Argumentos

exprN

Os argumentos devem incluir pelo menos uma expressão. Todas as expressões devem ser do mesmo tipo ou de tipos compatíveis.

Retornos

O primeiro argumento determina o tipo de retorno:

  • Se o primeiro tipo for numérico, então o tipo de retorno é ‘ampliado’ de acordo com os tipos numéricos na lista de todos os argumentos.

  • Se o primeiro tipo não for numérico, então todos os outros argumentos devem ser conversíveis para o primeiro tipo.

Se algum argumento for NULL, retorna NULL.

Detalhes do agrupamento

  • The collation specifications of all input arguments must be compatible.

  • The comparisons follow the collation based on the input arguments” collations and precedences.

  • The collation of the result of the function is the highest-precedence collation of the inputs.

Exemplos

Os exemplos a seguir usam a função GREATEST:

CREATE TABLE test_table_1_greatest (
  col_1 INTEGER, 
  col_2 INTEGER, 
  col_3 INTEGER, 
  col_4 FLOAT);
INSERT INTO test_table_1_greatest (col_1, col_2, col_3, col_4) VALUES
  (1, 2,    3,  4.00),
  (2, 4,   -1, -2.00),
  (3, 6, NULL, 13.45);
Copy
SELECT col_1,
       col_2,
       col_3,
       GREATEST(col_1, col_2, col_3) AS greatest
  FROM test_table_1_greatest
  ORDER BY col_1;
Copy
+-------+-------+-------+----------+
| COL_1 | COL_2 | COL_3 | GREATEST |
|-------+-------+-------+----------|
|     1 |     2 |     3 |        3 |
|     2 |     4 |    -1 |        4 |
|     3 |     6 |  NULL |     NULL |
+-------+-------+-------+----------+
SELECT col_1,
       col_4,
       GREATEST(col_1, col_4) AS greatest
  FROM test_table_1_greatest
  ORDER BY col_1;
Copy
+-------+-------+----------+
| COL_1 | COL_4 | GREATEST |
|-------+-------+----------|
|     1 |  4    |     4    |
|     2 | -2    |     2    |
|     3 | 13.45 |    13.45 |
+-------+-------+----------+