From: | MIGUEL CANCHAS <mcanchas(at)tsr(dot)com(dot)pe> |
---|---|
To: | 'Miguel Rodríguez Penabad' <penabad(at)gmail(dot)com>, Pavel Rodriguez de la Torre <prodriguezdlt(at)yahoo(dot)com> |
Cc: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | RE: Fwd: Saludos desde Mexico |
Date: | 2008-05-20 13:54:11 |
Message-ID: | 410117BB01F4D611B73A00010331DD2404B52C9C@tsnt.tsr.com.pe |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
-----Mensaje original-----
De: Miguel Rodríguez Penabad [mailto:penabad(at)gmail(dot)com]
Enviado el: Lunes, 19 de Mayo de 2008 06:16 p.m.
Para: Pavel Rodriguez de la Torre
CC: pgsql-es-ayuda(at)postgresql(dot)org
Asunto: Re: [pgsql-es-ayuda] Fwd: Saludos desde Mexico
El día 19 de mayo de 2008 16:41, Pavel Rodriguez de la Torre
<prodriguezdlt(at)yahoo(dot)com> escribió:
> Buen dia, este mail es sobre una duda en postgre, ojala me puedan
El nombre es "Postgres" o "PostgreSQL", no "postgre" ;)
> ayudar....tengo una base de datos en la cual tengo una tabla donde
almaceno
> los nombres de otras tablas que utilizo, el problema es que no logro hacer
> un select anidado donde el nombre de la tabla que voy a utilizar provenga
> del select de la tabla donde guardo los nombres de tablas.....la sentencia
> que estoy tratando de utilizar es la siguiente...y por mas que lo he
> intentado solo me regresa el nombre de la tabla pero no la puedo utilizar
> como nombre en el select from....
>
> SELECT * FROM (SELECT nombtabla from __aaatipos WHERE idt = 1) AS
> nomb_tabla;
>
> tambien probe con
>
> SELECT nomb_tabla.* FROM (SELECT nombtabla from __aaatipos WHERE idt = 1)
AS
> nomb_tabla;
>
>
> pero las dos opciones me regresan el nombre de la tabla que necesito pero
no
> hacen el select * de esa tabla
>
> porfaa ojala me pudieran hechar la mano...Gracias de antemano
>
A ver si entiendo:
Si (SELECT nombtabla from __aaatipos WHERE idt = 1) es "tabla1",
quieres hacer un
Select * from tabla1??
Si es así, no es posible hacerlo en SQL. Al menos hasta donde yo sé.
Podrías hacerlo en PL/pgSQL utilizando cursores y SQL dinámico, pero
(y es opinión personal) creo que tienes un problema de diseño de la
base de datos
o de la aplicación de acceso.
Saludos
--
Miguel Rodríguez Penabad
--
TIP 6: ¿Has buscado en los archivos de nuestra lista de correo?
http://archives.postgresql.org/pgsql-es-ayuda
**************************************
Depende de que lenguaje de programacion estes usando :
Yo lo pondria asi :
cTabla_recuperada = SELECT nombtabla from __aaatipos WHERE idt = 1
SELECT * FROM &cTabla AS &cTabla;
Lo mas recomendable en todo caso podria ser pasar el nombre de la tabla a
una variable y de alli evaluar la variable.
Miguel Canchas
From | Date | Subject | |
---|---|---|---|
Next Message | MIGUEL CANCHAS | 2008-05-20 13:59:06 | RE: Secuencias en Postgres |
Previous Message | Jaime Casanova | 2008-05-20 13:04:13 | Re: Algunos datos sobre PostgreSQL |