Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Consulta que se me complica

Estas en el tema de Consulta que se me complica en el foro de Mysql en Foros del Web. Tablas que tengo: Ensayo ->e --------- Id_ensayo-->pk Numero_Folio Observaciones Id_Compuesto ->foranea de la tabla compuesto Tecnico-> t ---------- Codigo_Tecnico->pk Nombre_Tecnico Apellidos_Tecnico Ensayos_Union ->u ------------------- Id_ensayo-> ...
  #1 (permalink)  
Antiguo 21/10/2008, 04:42
 
Fecha de Ingreso: enero-2008
Mensajes: 61
Antigüedad: 16 años, 2 meses
Puntos: 0
Consulta que se me complica

Tablas que tengo:

Ensayo ->e
---------
Id_ensayo-->pk
Numero_Folio
Observaciones
Id_Compuesto ->foranea de la tabla compuesto

Tecnico-> t
----------
Codigo_Tecnico->pk
Nombre_Tecnico
Apellidos_Tecnico

Ensayos_Union ->u
-------------------
Id_ensayo-> primaria de esta tabla y foranea de tala Ensayos
TantoXcienradio
.....

Realiza->r ->tabla que surge de la relación n:m entre tecnico y ensayo
-------------
Id_ensayo->pk y foránea de id_Ensayo (tabla ensayo)
Codigo_Tecnico->pk y foránea de codigo_Tecnico(Tabla técnico)
Fecha_inicio_ensayo

La consulta la tenía antes así:

SELECT e.Id_ensayo,e.Numero_Folio,e.Observaciones,e.Fecha _envio,e.Id_Compuesto, u.TantoXcienradio, from ensayo e, ensayo_union_radioligandos u where 1=1 and e.Id_Ensayo=u.Id_Ensayo and TipoReceptor = 'A1binding'


Luego la modifique así pero no funcionó (estaba mal):

SELECT e.Id_ensayo,e.Numero_Folio,e.Observaciones,e.Fecha _envio,e.Id_Compuesto,u.TantoXcienradio,t.Nombre_T ecnico from ensayo e, ensayo_union_radioligandos u, tecnico t, realiza r where 1=1 and e.Id_Ensayo=u.Id_Ensayo and r.Id_ensayo= e.Id_ensayo" .$condicion;


Lo que quiero es incluir una columna donde explique que técnico hizo cada ensayo. creo que sería con inner join pero no me sale, ayuda porfavoreeee!
  #2 (permalink)  
Antiguo 21/10/2008, 09:44
 
Fecha de Ingreso: enero-2008
Mensajes: 61
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Consulta que se me complica

Incluí una consulta dentro pero nada de nada,

SELECT e.Id_ensayo,e.Numero_Folio,e.Observaciones,e.Fecha _envio,e.Id_Compuesto,r.TantoXcienradio,r.IC50,r.K i,r.Kd,r.ConcentRadio,r.ConcentNSB,r.ProtPorPunto, r.TipoReceptor,


(select DISTINCT t.Nombre_Tecnico from técnico t, realiza r,ensayo e where t.codigo_tecnico= r.codigo_tecnico and r.Id_ensayo= e.Id_ensayo)

from ensayo e, ensayo_union_radioligandos r where 1=1 ande.Id_Ensayo=r.Id_Ensayo

sigo sin poder
  #3 (permalink)  
Antiguo 21/10/2008, 11:24
 
Fecha de Ingreso: enero-2008
Mensajes: 61
Antigüedad: 16 años, 2 meses
Puntos: 0
Respuesta: Consulta que se me complica

La consulta que hace lo que quería era esta que os pongo a continuación,

SELECT ensayo.Numero_Folio, ensayo.Observaciones, ensayo.Id_Compuesto, técnico.Codigo_Tecnico, técnico.Nombre_Tecnico, técnico.Apellidos_Tecnico, realiza.Fecha_inicio_ensayo,realiza.Id_ensayo, ensayo_union_radioligandos.Kd, ensayo_union_radioligandos.ConcentRadio, ensayo_union_radioligandos.TantoXcienradio, ensayo_union_radioligandos.ConcentraTantoXCien, ensayo_union_radioligandos.IC50, ensayo_union_radioligandos.Ki, ensayo_union_radioligandos.KiStandard, ensayo_union_radioligandos.TipoReceptor, ensayo_union_radioligandos.Tipo_Placa, ensayo_union_radioligandos.ProtPorPunto, ensayo_union_radioligandos.ConcentNSB
FROM técnico

INNER JOIN realiza ON técnico.Codigo_Tecnico = realiza.Codigo_Tecnico

INNER JOIN ensayo_union_radioligandos ON realiza.Id_ensayo = ensayo_union_radioligandos.Id_ensayo

INNER JOIN ensayo ON ensayo_union_radioligandos.Id_ensayo = ensayo.Id_ensayo

El problema es que solo me saca los ensayos que tienen asociado un tecnico en la tabla realiza , y yo quiero que me pongan todos ,si tienen tecnico asociado muestre dicho tecnico y sino no.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 15:30.