SQL GROUP_CONCAT dividido en diferentes columnas
Busqué mucho, pero no encontré una solución adecuada para mi problema.
Que quiero hacer
Tengo 2 tablas en MySQL: - País - Moneda (las uno a través de CountryCurrency -> debido a la relación de muchos a muchos)
Vea esto para un ejemplo de trabajo:http://sqlfiddle.com/#!2/317d3/8/0
Quiero unir ambas tablas mediante una combinación, pero quiero mostrar solo una fila por país (algunos países tienen varias monedas, por lo que ese fue el primer problema).
Encontré la función group_concat:
SELECT country.Name, country.ISOCode_2, group_concat(currency.name) AS currency
FROM country
INNER JOIN countryCurrency ON country.country_id = countryCurrency.country_id
INNER JOIN currency ON currency.currency_id = countryCurrency.currency_id
GROUP BY country.name
Esto tiene el siguiente resultado:
NAME ISOCODE_2 CURRENCY
Afghanistan AF Afghani
Åland Islands AX Euro
Albania AL Lek
Algeria DZ Algerian Dinar
American Samoa AS US Dollar,Kwanza,East Caribbean Dollar
Pero lo que quiero ahora es dividir las monedas en diferentes columnas (moneda 1, moneda 2, ...). Ya probé funciones como MAKE_SET () pero esto no funciona.