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

(Parâmetros)
(Exemplos)
 
(2 revisões intermediárias por 2 usuários não estão sendo mostradas)
Linha 3: Linha 3:
 
==='''Sintaxe'''===
 
==='''Sintaxe'''===
  
@Numeric
+
@NUMERIC
  
 
==='''Parâmetros'''===
 
==='''Parâmetros'''===
Linha 29: Linha 29:
 
|-
 
|-
 
|}
 
|}
 
==='''Exemplo'''===
 
 
procedure VerificarTamanho;
 
var
 
  Q: TPHQuery;
 
begin
 
  try
 
    Q := NewPHQuery;
 
    Q.Add('SELECT * ' +
 
          'FROM CLIENTES ' +
 
          'WHERE @LEN(NOME) > :TamanhoMinimo');
 
  finally
 
    Q.Free;
 
  end;
 
end;
 
begin
 
  VerificarTamanho;
 
end.
 
  
 
==='''Exemplos'''===
 
==='''Exemplos'''===
Linha 59: 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.