Saltar registros dentro de un foreach
Estimados Amigos:
Tengo dos tablas en mysql , una es de personas y otra es de telefonos relacionadas entre si por un campo "personas_id" en la tabla telefonos, tengo una consulta "seleccionar todos los telefonos que tiene una persona", la que arroja un conjunto de datos parecido a: apellido telefono Personas_id Roldan 541138451425 1 Roldan 541138111122 1 Roldan 541144444444 1 Perez 542614502354 2 Perez 542612222222 2 Juarez 543514542222 3 La he resumido en campos y registros. ;D Como se puede ver si la persona tiene 2 o 3 numeros de telefonos tenemos un registro por cada numero, lo que yo deseo mostrar es una linea por cada persona y si tiene mas de un numero de telefono , en la columna telefono concatenar todos los numeros de esta persona, algo asi como: apellido telefono Personas_id Roldan 541138451425 | 541138111122 | 541144444444 1 Perez 542614502354 | 542612222222 2 Juarez 543514542222 3 Para esto uso el siguiente trozo de codigo, con dos foreach anidados: Código PHP:
Código PHP:
Obviamente si hay otra forma de hacerlo, por favor me guian, desde ya muchas gracias. |
Cita:
personas = (personas_id, apellido, ... ) telefonos = (personas_id, telefono, ...) En MySQL puedes realizar esta consulta:
con la cual obtienes directamente los resultados como los quieres, una línea por persona y los teléfonos concatenados por el caracter |. LineComment Saludos |
Gracias Roman por tu respuesta , no conocia la existencia de GROUP_CONCAT, voy a probar a ver si sale, muchas gracias.
|
La franja horaria es GMT +2. Ahora son las 16:58:58. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi