Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search archives
  Advanced Search

Re: like no funciona


  • From: suso <jlcubas(at)terra(dot)es>
  • To: PostgreSQL <pgsql-es-ayuda(at)postgresql(dot)org>
  • Subject: Re: like no funciona
  • Date: Sat, 28 Nov 2009 18:34:38 +0000
  • Message-id: <4B116D3E.2090508@terra.es> <text/plain>

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;










Home | Main Index | Thread Index

Privacy Policy | About PostgreSQL
Copyright © 1996 – 2012 PostgreSQL Global Development Group