SELECT
IFNULL(PRODUCT_NAME,'PRODUCT_NAME') ,
MAX(IF(ACCESSORY='XP-22',ACCESSORY,NULL)) AS xp22,
MAX(IF(ACCESSORY='AD-110',ACCESSORY,NULL)) AS AD110,
MAX(IF(ACCESSORY='SY-15',ACCESSORY,NULL)) AS SY15,
MAX(IF(ACCESSORY='LY-4',ACCESSORY,NULL)) AS LY4,
MAX(IF(ACCESSORY='AD-111',ACCESSORY,NULL)) AS AD111,
MAX(IF(ACCESSORY='AD-124',ACCESSORY,NULL)) AS AD124,
MAX(IF(ACCESSORY='AD-123',ACCESSORY,NULL)) AS AD123
FROM e_product
GROUP BY PRODUCT_NAME
WITH ROLLUP
HAVING PRODUCT_NAME IS NOT NULL;