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

Asignar datos a quien corresponda.

Estas en el tema de Asignar datos a quien corresponda. en el foro de Mysql en Foros del Web. Buenas Noches Se que el titulo da a entender algo fácil , pero creo que es un poco más complejo ya que lo que quiero ...
  #1 (permalink)  
Antiguo 29/06/2014, 19:28
 
Fecha de Ingreso: septiembre-2013
Mensajes: 15
Antigüedad: 10 años, 7 meses
Puntos: 0
Asignar datos a quien corresponda.

Buenas Noches

Se que el titulo da a entender algo fácil , pero creo que es un poco más complejo ya que lo que quiero hacer es poder sacar de una columna (llamada código) dos tipos de datos Alfanuméricos por ej "A1" y numericos "1 " y asignarlo al que corresponda

supongamos que tenemos una madre y un padre

id_conejo_macho A1
id_conejo_madre 1

quisiera poder poner en una lista para cada uno que corresponda

por el momento mi consulta de mysql es la siguiente
Código MySQL:
Ver original
  1. SELECT fecha_nacimiento,codigo,id_conejo_hembra, cu.id_cubricion
  2. FROM conejos AS c
  3.     INNER JOIN cubricion AS cu ON cu.id_conejo_macho
  4. WHERE c.id_conejo = cu.id_conejo_macho

esto me da resultado pero solo para los padres, no puedo obtener el resultado del código de cada madre, solo el id .

Bueno espero que se entienda.

Muchas Gracias!

Última edición por gnzsoloyo; 30/06/2014 a las 13:12
  #2 (permalink)  
Antiguo 30/06/2014, 13:16
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Asignar datos a quien corresponda.

Bueno, por lo pronto, tienes una condición redundante no terminada:
Esto:
Código MySQL:
Ver original
  1. ON cu.id_conejo_macho
y esto:
Código MySQL:
Ver original
  1. WHERE c.id_conejo = cu.id_conejo_macho
bsucan a lo mismo, y la primera está incompleta.
La sintaxis correcta es:
Código MySQL:
Ver original
  1. SELECT fecha_nacimiento,codigo,id_conejo_hembra, cu.id_cubricion
  2. FROM conejos AS c
  3.     INNER JOIN cubricion AS cu ON c.id_conejo = cu.id_conejo_macho
Respecto a la coneja, necesitas dos veces la misma tabla, por tanto debes invocarla dos veces, con diferentes alias:

Código MySQL:
Ver original
  1. SELECT fecha_nacimiento, codigo, id_conejo_hembra, cu.id_cubricion
  2. FROM cubricion cu
  3.     INNER JOIN conejos c ON c.id_conejo = cu.id_conejo_macho
  4.     INNER JOIN conejos C2 ON c2.id_conejo = cu.id_conejo_hembra
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 30/06/2014, 16:55
 
Fecha de Ingreso: septiembre-2013
Mensajes: 15
Antigüedad: 10 años, 7 meses
Puntos: 0
Respuesta: Asignar datos a quien corresponda.

Muchas gracias por responder, realice lo detallado pero ahora el caso es inverso me muestra solo los "nombres" de las madres.

Gracias nueva mente .
  #4 (permalink)  
Antiguo 30/06/2014, 17:26
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Asignar datos a quien corresponda.

Pues lo que debes hacer es tomar de C los nombres de los padres y de C2 los de las madres.
No es obvio?
Si te aparecen los mismos, tienes datos sucios.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 30/06/2014, 17:35
 
Fecha de Ingreso: septiembre-2013
Mensajes: 15
Antigüedad: 10 años, 7 meses
Puntos: 0
Respuesta: Asignar datos a quien corresponda.

no , si si eso te entendí perfectamente, pero no se por que me toma el ultimo INNER JOIN

por ej si tengo
INNER JOIN conejos c ON c.id_conejo = cu.id_conejo_macho

Machos

INNER JOIN conejos C2 ON c2.id_conejo = cu.id_conejo_hembra

Hembras

en el campo codigo tengo

A1 , A2 y 1 y 2

EDITO:

Genero la consulta en phpmyadmin y me recolecta los datos bien , con todos sus respectivos datos, puede ser que estoy mostrando mal los datos?



Muchas Gracias!

Última edición por sebl; 01/07/2014 a las 07:53

Etiquetas: join, select, 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 19:42.