Buenos días foro:
Estoy usando Firebird 2.5 y la base dice SQL Dialecto 1
Tengo un campo string que tiene este dato '20-12456789-0' y necesito que al consultar regrese '2012456890'.
Necesito tenerlo desde la consulta, sin arreglarlo desde Delphi.
Estuve mirando la posibilidad de hacer un procedimiento almacenado, pero aún no tuve éxito.
la verdad es que no puedo crearlo. Si lo ejecuto así, me dice "Token unknow line 1 column 5"
Si le saco la primer línea, me dice "Unespeted en of command line 3 column 11" , y así llevo horas renegando.
Bueno, desde ya agradezco cualquier sugerencia que me ayude a resolver este tema.
(este procedimiento que copio abajo, lo saqué de internet y le hice algunas modificaciones)
saludos.
Código SQL
[-]
SET TERM ^;
Create Procedure SoloNumeros (num string) returns (Numero String) as
declare i integer;
declare res string;
begin
res='';
i=1;
while (i<=char_length(:num)) do begin
if ((substring(:num from i for 1) > ascii_char(29) ) and (substring(:num from i for 1)then begin
res =res||substring(:num from i for 1);
end
i=i+1;
end
result=res;
suspend;
end ^
SET TERM ;^