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

Identificar campos correspondiente a cada tabla

Estas en el tema de Identificar campos correspondiente a cada tabla en el foro de Mysql en Foros del Web. Hola, dado que conozco muy poco de SQL necesito recrear una tabla que no se encuentra en la base de datos a partir del único ...
  #1 (permalink)  
Antiguo 18/12/2012, 13:11
 
Fecha de Ingreso: septiembre-2007
Mensajes: 120
Antigüedad: 16 años, 6 meses
Puntos: 0
Identificar campos correspondiente a cada tabla

Hola, dado que conozco muy poco de SQL necesito recrear una tabla que no se encuentra en la base de datos a partir del único query en toda la aplicación donde mencionan a la tabla "tbl_seg_eadverso". Alguien podria ayudarme a identificar que campos corresponden a esa tabla partiendo de ese query?

de antemano mil gracias por la ayuda

Código MySQL:
Ver original
  1. SELECT  tea.*,
  2.      t.comentario,
  3.      COUNT(t.id_ev_adverso) AS cont
  4. FROM tbl_ev_adverso_a tea
  5.      LEFT JOIN tbl_seg_eadverso t ON tea.id = t.id_ev_adverso
  6. WHERE tea.id_ev_adverso = '$id_adverso'
  7. GROUP BY tea.id;

Última edición por gnzsoloyo; 18/12/2012 a las 13:13 Razón: Etiquetado incorrecto. Usar Highlight "MySQL"
  #2 (permalink)  
Antiguo 19/12/2012, 04:09
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

Etiquetas: sql
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 00:48.