RE:Consulta que no acabo de resolver

From: marta vicente romero <mviceromgvsig(at)gmail(dot)com>
To: POSTGRES <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: RE:Consulta que no acabo de resolver
Date: 2009-02-14 11:37:33
Message-ID: 3a7ce4e50902140337x1e788555r68f3332f219c604b@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Voy a poner aqiu algunas de las pruebas que he hecho por si alguien ve algun
fallo claro y me puede guiar un poco

voy a quitar una tabla para que sea menos complicado:

si solo tenemos:
sustancia
gidsustancia | abreviatura | ...

detallea
giddetallea| gidsustancia | gidanalitica | resultado

detallecomentario (aqui ponemos directamente el comentario)
giddetallecom | gidsustancia |gidanalitica | comentario

yo he echo las siguientes preubas obteniendo los siguientes resultados:

te pongo un ejemplo

sustancia
gidsustancia | abreviatura | ...
<1,Temp>

detallea
giddetallea| gidsustancia | gidanalitica | resultado
<1500, 1, 29, 27>

detallecomentario (directamente pongo aqui el comentario)

giddetallecom | gidsustancia |gidanalitica | comentario
<5, 1, 29, No hay phmetro>

# select t1.abreviatura, t2.resultado, t3.comentario from (susta
ncia t1 inner join detalleanalitica t2 on t1.gidsustancia=
t2.gidsustancia)right
join detallecomentario t3 on t1.gidsustancia= t3.gidsustancia where
t2.gidana
litica= 29 and t3.gidanalitica=29;

abreviatura | resultado | comentario
-------------+-----------+---------------
pH | 7.17 | no hay phmetro
Temp | 27 | no hay phmetro
(2 rows)

(he hecho algunas pruebas mas.. si pongo los dos inner join com o left join
o los dos como right join sale exactamente el mismo resultado .. y no lo
entiendo..)

y en realidad yo quiero que salgan todos los resultados de la analitica no
solo los que tengan comentario:

es decri existen 3 casos:

que un par gidanalitica, gidsustancia se relacoinen por :
uncomentario
un resultado
o un comentario y un resulado
y yo quiero que me muestre todo...

# select t1.abreviatura, t2.resultado from (sustancia t1 inner join
detalleanalitica t2 on t1.gidsustancia= t2.gidsustancia) where
t2.gidanalitica=
29;

abreviatura | resultado
-------------+-----------
Colif_tot | 0
Dureza_tot | 690
NitritoNO2 | 0.02
Ca | 140
NitratNO3 | 100
NH4Amonio | 0.2
Conduct | 2030
pH | 7.17
Cloro_resl | 0.8
CloruroCl | 389.64
Mg | 550
Temp | 27
Estrept | 0
Alcalin | 358.68
ColifFeca | 0
(15 rows)

aqui faltarian los comnetarios de los que tienen resultado, y las sustancias
que no tienen resultado y si comentario pero no se como se puede añadir a
esto...

espero que me puedan ayudar...
muchas gracias

El 12 de febrero de 2009 19:48, marta vicente romero <
mviceromgvsig(at)gmail(dot)com> escribió:

> Hola
> Pido ayuda con una consulta, que no acabo de resolver:
>
> Tengo las tablas:
>
> sustancia
> gidsustancia | abreviatura | ...
>
> detallea
> giddetallea| gidsustancia | gidanalitica | resultado
>
> detallecomentario
> giddetallecom | gidsustancia |gidanalitica | gidcomentario
>
> comentario
> gidcomentario | comentario
>
> lo que quiero es obtener:
> abreviatura, resultado , comentario
>
> teniendo en cuenta que existen varias posibilidades:
> que el resultado tambien tenga comentario
> que la sustancia solo tenga resultado para esa analitica, por lo que el
> comentario es null
> o que la sustancia solo tenga comentario para esa analitica, por lo que el
> resultado es null
>
> la conulta quitando el comentario seria para a analitica 25 por ejemplo:
> Select abreviatura, resultado from sustancia, detallea where
> sustancia.gidsustancia = detallea.gidsustancia and gidanalitica= 25;
> o con un inner join...
>
>
> El problema es que no logro entender como construir la tabla con el
> comentario y las posibilidades que he explicado.. con inner join y outer
> join .. no se como construirlo para que sea correcto
> alguien me puede dar una idea...
>
> muchas gracias
>

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Mario Burdman 2009-02-14 13:05:39 Re: Consulta que no acabo de resolver
Previous Message Marcos Ortiz Valmaseda 2009-02-14 04:43:35 Re: Compilar o Instalar binarios,,,,