Mudanças entre as edições de "Função @NUMERIC"

(Exemplo)
(Exemplos)
 
(Uma revisão intermediária pelo mesmo usuário não está sendo mostrada)
Linha 3: Linha 3:
 
==='''Sintaxe'''===
 
==='''Sintaxe'''===
  
@Numeric
+
@NUMERIC
  
 
==='''Parâmetros'''===
 
==='''Parâmetros'''===
Linha 40: Linha 40:
 
     Q.Add('SELECT * ' +
 
     Q.Add('SELECT * ' +
 
           'FROM DADOS ' +
 
           'FROM DADOS ' +
           'WHERE @NUMERIC(CAMPO_TEXTO) = TRUE');
+
           'WHERE CAST(CAMPO_TEXTO AS @NUMERIC) > 0');
 
   finally
 
   finally
 
     Q.Free;
 
     Q.Free;

Edição atual tal como às 14h15min de 3 de março de 2025

A função @NUMERIC é utilizada para verificar se um valor pode ser interpretado como um número. Ela retorna TRUE se a entrada for um valor numérico e FALSE caso contrário

Sintaxe

@NUMERIC

Parâmetros

Nome Banco Descrição
@Numeric PostgreSQL VALOR ~ '^[0-9]+(\.[0-9]+)?$'
@Numeric Oracle CASE WHEN REGEXP_LIKE(VALOR, '^[0-9]+(\.[0-9]+)?$') THEN 1 ELSE 0 END
@Numeric FireBird IIF(VALOR SIMILAR TO '[0-9]+(\.[0-9]+)?', 1, 0)
@Numeric SQLServer ISNUMERIC(VALOR)

Exemplos

procedure FiltrarNumericos; 
var
  Q: TPHQuery;
begin
  try
    Q := NewPHQuery;
    Q.Add('SELECT * ' +
          'FROM DADOS ' +
          'WHERE CAST(CAMPO_TEXTO AS @NUMERIC) > 0');
  finally
    Q.Free;
  end;
end;
begin
  FiltrarNumericos;
end.