¿Cómo concateno cadenas de una subconsulta en una sola fila en mysql?

Tengo tres mesas:

table "package"
-----------------------------------------------------
package_id      int(10)        primary key, auto-increment
package_name    varchar(255)
price           decimal(10,2)

table "zones"
------------------------------------------------------
zone_id         varchar(32)    primary key (ex of data: A1, Z2, E3, etc)

table "package_zones"
------------------------------------------------------
package_id     int(10)
zone_id        varchar(32)

Lo que intento hacer es devolver toda la información en la tabla de paquetes MÁS una lista de zonas para ese paquete. Quiero la lista de zonas ordenadas alfabéticamente y separadas por comas.

Entonces, la salida que estoy buscando es algo como esto ...

+------------+---------------+--------+----------------+
| package_id | package_name  | price  | zone_list      |
+------------+---------------+--------+----------------+
| 1          | Red Package   | 50.00  | Z1,Z2,Z3       |
| 2          | Blue Package  | 75.00  | A2,D4,Z1,Z2    |
| 3          | Green Package | 100.00 | B4,D1,D2,X1,Z1 |
+------------+---------------+--------+----------------+

Sé que podría hacer algo en PHP con la capa de presentación para obtener el resultado deseado. El problema es que me gustaría poder ordenar zone_list ASC o DESC o incluso usar "WHERE zone_list LIKE" y así sucesivamente. Para hacer eso, necesito hacer esto en MYSQL.

No tengo idea de cómo comenzar a abordar esto. Intenté usar una subconsulta, pero seguía quejándose de varias filas. Traté de concatenar las múltiples filas en una sola cadena, pero evidentemente a MySQL no le gusta esto.

Gracias por adelantado.

¡ACTUALIZAR!

Aquí está la solución para aquellos que estén interesados.

SELECT 
    `package`.*,
    GROUP_CONCAT(`zones`.`zone` ORDER BY `zones`.`zone` ASC SEPARATOR ','  )  as `zone_list`
FROM 
    `package`,
    `package_zones`
LEFT JOIN 
    (`zones`,`ao_package_zones`) ON (`zones`.`zone_id` = `package_zones`.`zone_id` AND `package_zones`.`package_id` = `package`.`package_id`)
GROUP BY 
    `ao_package`.`package_id`

Respuestas a la pregunta(1)

Su respuesta a la pregunta