Ver Mensaje Individual
  #2 (permalink)  
Antiguo 19/12/2012, 04:09
quimfv
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Identificar campos correspondiente a cada tabla

SELECT tea.*,
t.comentario,
COUNT(t.id_ev_adverso) AS cont
FROM tbl_ev_adverso_a tea
LEFT JOIN tbl_seg_eadverso t ON tea.id = t.id_ev_adverso
WHERE tea.id_ev_adverso = '$id_adverso'
GROUP BY tea.id;

Luego de esta query se puede afirmar que la tabla en cuestion como minimo tiene esos dos campos

id_ev_adverso
comentario

pero puede tener mas.

ademas se puede asegurar que el id de la otra tabla y id_ev_adverso concuerdan en formato y semantica.

En azul he marcado lo que parece una incoherencia de la query ya que atribuye a tea "id_ev_adverso" que seria de la otra tabla, no tiene sentido que id y id_ev_adverso esten en la misma tabla conteniendo la misma info.

lo correcto seria

SELECT tea.*,
t.comentario,
COUNT(t.id_ev_adverso) AS cont
FROM tbl_ev_adverso_a tea
LEFT JOIN tbl_seg_eadverso t ON tea.id = t.id_ev_adverso
WHERE t.id_ev_adverso = '$id_adverso'
GROUP BY tea.id;

o

SELECT tea.*,
t.comentario,
COUNT(t.id_ev_adverso) AS cont
FROM tbl_ev_adverso_a tea
LEFT JOIN tbl_seg_eadverso t ON tea.id = t.id_ev_adverso
WHERE tea.id = '$id_adverso'
GROUP BY tea.id;
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Última edición por quimfv; 19/12/2012 a las 04:15