From: | Alvaro Herrera <alvherre(at)2ndquadrant(dot)com> |
---|---|
To: | Héctor Alonso Lozada Echezuría <imatsu(at)gmail(dot)com> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: Filtrar por las posiciones de un array |
Date: | 2018-05-17 19:49:29 |
Message-ID: | 20180517194929.6y4jlmnh2yzxqfwm@alvherre.pgsql |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Héctor Alonso Lozada Echezuría escribió:
> Si quisiera listar los elementos de la tabla los cuales pertenecen a B
> entonces hago lo siguiente:
>
> SELECT * FROM tabla WHERE ruta[1] = 1 AND ruta[2] = 1;
alvherre=# create table hector (a "char", ruta int[]);
CREATE TABLE
alvherre=# insert into hector values ('A', '{1}'), ('B', '{1,1}'), ('C', '{1,1,1}'), ('D', '{1,1,1,1}'), ('E', '{1,1,1,2}'), ('F', '{1,1,1,3}');
alvherre=# select * from hector where ruta[1:2] = '{1,1}';
o
alvherre=# select * from hector where ruta[1:2] = (select ruta from hector where a = 'B');
a │ ruta
───┼───────────
B │ {1,1}
C │ {1,1,1}
D │ {1,1,1,1}
E │ {1,1,1,2}
F │ {1,1,1,3}
(5 filas)
(¿quizás te sirva usar contrib/ltree?)
--
Álvaro Herrera https://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services
From | Date | Subject | |
---|---|---|---|
Next Message | RETUERTO Noelia | 2018-05-18 09:36:15 | RE:FINAL ** ADVERTENCIA ** SU CUENTA ESTARÁ CERRADA |
Previous Message | Hellmuth Vargas | 2018-05-17 19:34:58 | Re: Filtrar por las posiciones de un array |