SELECT count(*) INTO devuel FROM clientes WHERE UPPER(apell) LIKE UPPER('%apelli%')

El 26-11-2009, a las 6:17, jjlcubas escribió:

Hola Marcos, esa manera tampoco funciona, me da 0, aunque ya la había probado, asi como las siguientes:

select COUNT(*) INTO devuel from CLIENTES where apell like '& apelli & %';
select COUNT(*) INTO devuel from CLIENTES where apell like 'apelli %';
select COUNT(*) INTO devuel from CLIENTES where apell like 'apelli || %'; select COUNT(*) INTO devuel from CLIENTES where apell like '|| apelli || %';

Esta es la funcion completa

DECLARE
devuel integer;
BEGIN
 if apelli is not null THEN
---ENTRA EN ESTE BUCLE, HACE EL SELECT
    SELECT...
                                  ---   PERO DEVUELVE 0...:(
end if;              if found=true then
      return devuel;
  else
      return 0;      end if;   END;
Si le quito el "like....", me registros, osea la cantidad de registros totales lo que me extraña es que yo uso para en otro select (dentro de mi programa, en vb6) sólo con el like, y me busca el registro correspondiente, de esta manera:
cadena_auxi = "apell like '" & Trim(UCase(apelli(0).Text)) & "*" & "'"
Adodc1(0).RecordSet.MoveFirst
Adodc1(0).RecordSet.Find cadena_auxi
La que uso para este caso, no usa el control ado, Usa ADODB, como siempre, y sin problemas hasta ahora
No sé...
Gracias
Un saludo
Suso
suso escribió:
Hola a todos, tengo un problemilla con esta consulta, con postgres 8.4 bajo winxp, quiero obtener la cantidad de registros que cumplan esa condición

devuel integer;
select COUNT(*) INTO devuel from CLIENTES where apell like '" & apelli & "%';

El campo apell esté en mayúsculas y en "apelli" también.

La ejecuto desde pgadmin o desde mi programa y siempre me duevuelve 0, y hay como mínimo 3 por la letra/s que quiero ver, que es el caso que menos tengo.

¿ En qué me equivoco ?.
Alquién que me eche una mano.
Muchas gracias
Un saludo
Suso
--
TIP 10: no uses HTML en tu pregunta, seguro que quien responda no podrá leerlo
Prueba asi:
select COUNT(*) INTO devuel from CLIENTES where apell like ' apelli %';


--
TIP 10: no uses HTML en tu pregunta, seguro que quien responda no podrá leerlo


------------------------
Manuel Diego Paillafil Gamboa
man...@radiohead.cl
Móvil: 06 - 801 60 24




Responder a