Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/07/2009, 13:38
raztafari123
 
Fecha de Ingreso: febrero-2006
Mensajes: 44
Antigüedad: 20 años, 7 meses
Puntos: 0
De acuerdo ayuda con inner join + group by

hola amigos de foros del web.
hago un select de esta forma
Código PHP:
SELECT
    solicitudacreditacion
.id_solicitud
        
, escuela.nomb_largEscuela
        
, solicitudacreditacion.estado_solicitud
        
, institucion.nomb_smallInstitucion
        
, escuela.nomb_largEscuela
        
, tipodocumento.desc_tipoDocumento
        
, documento.nomb_documento
        
, documento.fecha_documento
        
, tipodocumento.id_tipoDocumento
FROM solicitudacreditacion
INNER JOIN escuela 
        ON 
(solicitudacreditacion.cod_escuela = escuela.cod_escuela)
INNER JOIN facultad 
        ON 
(escuela.cod_facultad = facultad.cod_facultad)
INNER JOIN institucion 
       ON 
(facultad.cod_institucion = institucion.cod_institucion)
INNER JOIN documento 
        ON 
(documento.id_solicitud = solicitudacreditacion.id_solicitud)
INNER JOIN tipodocumento 
       ON 
(documento.id_tipoDocumento = tipodocumento.id_tipoDocumento)
WHERE solicitudacreditacion.estado_solicitud IS NOT NULL
AND solicitudacreditacion.estado_solicitud != 'acreditado' 
pero no quiero que se repita el nombre de la escuela (escuela.nomb_largEscuela), y que me muestre el documento (tipodocumento.desc_tipoDocumento) pero que muestre el ultimo tomando referencia "tipodocumento.id_tipoDocumento", asi que agrego al select anterior
Código PHP:
SELECT
    solicitudacreditacion
.id_solicitud
    
, escuela.nomb_largEscuela
    
, solicitudacreditacion.estado_solicitud
    
, institucion.nomb_smallInstitucion
    
, escuela.nomb_largEscuela
    
, max(tipodocumento.desc_tipoDocumento)
    , 
max(documento.nomb_documento)
    , 
max(documento.fecha_documento)
    , 
max(tipodocumento.id_tipoDocumento)
FROM solicitudacreditacion
    INNER JOIN escuela 
        ON 
(solicitudacreditacion.cod_escuela = escuela.cod_escuela)
    
INNER JOIN facultad 
        ON 
(escuela.cod_facultad = facultad.cod_facultad)
    
INNER JOIN institucion 
        ON 
(facultad.cod_institucion = institucion.cod_institucion)
    
INNER JOIN documento 
        ON 
(documento.id_solicitud = solicitudacreditacion.id_solicitud)
    
INNER JOIN tipodocumento 
        ON 
(documento.id_tipoDocumento = tipodocumento.id_tipoDocumento)
WHERE solicitudacreditacion.estado_solicitud IS NOT NULL
AND solicitudacreditacion.estado_solicitud != 'acreditado'
GROUP BY solicitudacreditacion.id_solicitud
ORDER BY solicitudacreditacion
.id_solicitud, tipodocumento.id_tipoDocumento DESC 
Me muestra todo correcto, menos documento.nomb_documento, que debe estar relacionado con max(tipodocumento.id_tipoDocumento), haber quien em puede ayudar, a afinar esta consulta