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

Consulta a una tabla

Estas en el tema de Consulta a una tabla en el foro de Mysql en Foros del Web. Hola Necesito que alguien me ilumine: Tengo la siguiente tabla: id | hora | cA | cB | cC 1 | 12:00, 2:20 | 2 ...
  #1 (permalink)  
Antiguo 25/01/2011, 11:14
 
Fecha de Ingreso: junio-2010
Mensajes: 117
Antigüedad: 13 años, 10 meses
Puntos: 1
Consulta a una tabla

Hola

Necesito que alguien me ilumine:

Tengo la siguiente tabla:

id | hora | cA | cB | cC
1 | 12:00, 2:20 | 2 | 3 | 4
2 | 12:30, 1:15 | 2 | 3 | 4
3 | 1:00 | 2 | 3 | 4
4 | 1:30,2:10,3:00 | 2 | 3 | 4

Lo que quiero es que con una consulta me devuelva todos los valores del campo hora en un solo registro ya que cA, cB y cC son iguales

Esto es lo que quiero:

Respuesta:

12:00, 2:20, 12:30, 1:15, 1:00, 1:30,2:10,3:00


Alguien sabe como hacer la consulta?????
  #2 (permalink)  
Antiguo 25/01/2011, 12:19
Avatar de ArkangelGammar  
Fecha de Ingreso: enero-2011
Ubicación: <?php $persona->ubicacion('ArkangelGammar'); ?>
Mensajes: 179
Antigüedad: 13 años, 3 meses
Puntos: 19
Respuesta: Consulta a una tabla

Por que tenes la hora asi?

Tenes dos horas distintas en el mismo campo????
  #3 (permalink)  
Antiguo 25/01/2011, 12:22
 
Fecha de Ingreso: junio-2010
Mensajes: 117
Antigüedad: 13 años, 10 meses
Puntos: 1
Respuesta: Consulta a una tabla

Si, el campo hora es de tipo varchar, pueden haber las horas que sean
  #4 (permalink)  
Antiguo 25/01/2011, 13:01
Avatar de ArkangelGammar  
Fecha de Ingreso: enero-2011
Ubicación: <?php $persona->ubicacion('ArkangelGammar'); ?>
Mensajes: 179
Antigüedad: 13 años, 3 meses
Puntos: 19
Respuesta: Consulta a una tabla

Seperar las horas a nivel de consulta es virtualmente imposible, mas aun si no sabes a priori la cantidad de horas.

Si trabajas con php lo que podes hacer es bajar todos los resultados a una variable y despues aplicarle un explode,

por ejemplo:

Código PHP:


$array
=explode(",",$horas//Aca supongo que $horas es el string que contiene las horas de la base de datos
$cont count($array)-1;     // Cuentas cuantas posiciones tiene el array (3)
For ($i=0$i<=$cont$i++){
Echo 
$array[$i]."<br>";

Te mostrará:
elemento 1
elemento 2
elemento 3

Espero haber ayudado

Saludos

Última edición por ArkangelGammar; 25/01/2011 a las 13:02 Razón: Me olvide el saludo che!
  #5 (permalink)  
Antiguo 25/01/2011, 13:19
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: Consulta a una tabla

Prueba así:
Código MySQL:
Ver original
  1. SELECT GROUP_CONCAT(hora) horas
  2. FROM tabla
  3. GROUP BY cA, cB, cC;

De todos modos te advierto que tienes mal diseñada la tabla y mal diseñada la base, si estás usando esa forma de almacenar las horas. Muy mal diseñados.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: tablas
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:04.