From: | suso <jlcubas(at)terra(dot)es> |
---|---|
To: | PostgreSQL <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: like no funciona |
Date: | 2009-11-28 18:34:38 |
Message-ID: | 4B116D3E.2090508@terra.es |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
lo acabo de probar, como señalas mas abajo, y lo msimo, 0, no sé que puede estar mal
esta es la definición de ese campo, por si ves algo "raro"
ALTER TABLE pacientes ADD COLUMN apell character varying(40);
ALTER TABLE pacientes ALTER COLUMN apell SET STORAGE EXTENDED;
ALTER TABLE pacientes ALTER COLUMN apell SET NOT NULL;
Y este es el índice
CREATE INDEX pacientes_apell
ON pacientes
USING btree
(apell);
> El día 28 de noviembre de 2009 15:16, suso <jlcubas(at)terra(dot)es> escribió:
>> Emanuel Calvo Franco escribió:
>>> El día 28 de noviembre de 2009 14:54, suso <jlcubas(at)terra(dot)es> escribió:
>>>> Hola Cesar, probé tu función, que aunque devuelve todos los registros
>>>> coincidentes, no la cantidad exclusivamente de registros que puede haber,
>>>> mi
>>>> "necesidad" de devolver cantiddad, es pq no sé cuántos registros puede
>>>> traer
>>>> esa consulta(puede tener 1000 o 2000, para carga de red no sé si s
>>>> demasiado, debdio a eso, no me gustaría que trajera más de 500), pq
>>>> sabiendo
>>>> la cantidad, si es mayor de 500, me traigo sólo los 500, y los demás para
>>>> una futura consulta (si es que es necesario).
>>>> No sé si me explico.
>>>> Aún así, adapté la consulta de like según me pasaste en el ejemplo, pero
>>>> me
>>>> sigue trayendo 0, es decir, a mí no me funciona, lo dicho, soy gafe:(
>>>> No sé si lo estoy haciendo mal, o no se puede lo que yo necesito.
>>>> select COUNT(*) INTO devuel from pacientes where apell LIKE UPPER('||
>>>> quote_literal($1) ||');
>>>> Me deveulve 0
>>>
>>>
>>> DROP TABLE prueba;
>>> CREATE TABLE prueba
>>> AS
>> Este select concretamente, que hace,pq me da error de sintaxis en esta línea
>> precisamente
>
> Este select en realidad es parte de la sintaxis de 'CREATE TABLE'.
> Simplemente lo use
> en conjunto con el UPDATE para generar un set de pruebas con datos
> similares a los tuyos.
>
>>> SELECT ('{PEDRO,JUAN,ROBERTO,
>>> PEPE}'::text[])[round(random()*3+1)] as apelli
>>> FROM generate_series(1,20);
>>>
>>> UPDATE prueba SET apelli = quote_literal(apelli);
>>>
>
> Este es el select que interesa:
>
>>> SELECT * FROM
>>> prueba
>>> WHERE
>>> apelli like ( $e$'$e$ || 'PE' || '%')::text;
>>>
>
>
>
>
>
From | Date | Subject | |
---|---|---|---|
Next Message | suso | 2009-11-28 18:39:46 | Re: like no funciona |
Previous Message | Emanuel Calvo Franco | 2009-11-28 18:29:51 | Re: like no funciona |