From: | Daniel Orozco <huesos52(at)hotmail(dot)com> |
---|---|
To: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Como puedo accesar a un atributo de un type en una consulta? |
Date: | 2010-08-04 14:54:17 |
Message-ID: | AANLkTikg4-nspnf5vy=FWxYxee364AR7XzngQJxRsKQ4@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Buen día Foro
Mostraré con un ejemplo lo que quiero lograr.
pruebas=> create type persona as (cedula integer,nombre varchar(80));
CREATE TYPE
pruebas=> create table estudiantes(info persona,carrera varchar(90));
CREATE TABLE
pruebas=> \d estudiantes;
Tabla ½public.estudiantes╗
Columna | Tipo | Modificadores
---------+-----------------------+---------------
info | persona |
carrera | character varying(90) |
Tengo un tipo llamado persona y a su vez creo una tabla estudiantes donde un
campo info será de este nuevo tipo.
Hago una inserción en la tabla estudiantes así:
pruebas=> INSERT INTO estudiantes
VALUES((75102765,'Daniel')::persona,'Ing. sistemas');
INSERT 0 1
pruebas=# select *from estudiantes;
info | carrera
-------------------+---------------
(75102765,Daniel) | Ing. sistemas
(1 fila)
Ahora bien, me gustaría hacer una consulta que me traiga el nombre y la
carrera. (Sin la cedula)
Como puedo accesar a este atributo unicamente desde una consulta SQL?
He probado
SELECT e.info.nombre,carrera FROM estudiantes e;
Pero me dice que no existe el esquema e.
Entonces probé
SELECT public.e.info.nombre,carrera FROM estudiantes e;
Pero me saca un error de cross-database references not implemented.
Espero me puedan ayudar.
saludos
--
Daniel Orozco Jaramillo
Ing. Sistemas y Telecomunicaciones
OCE (Oracle Certified SQL Expert)
From | Date | Subject | |
---|---|---|---|
Next Message | Moises Alberto Lindo Gutarra | 2010-08-04 15:25:00 | Re: Como puedo accesar a un atributo de un type en una consulta? |
Previous Message | Diego Ayala | 2010-08-04 13:52:58 | Re: problemas con pgpool-II |