MySQL — как написать запрос с несколькими SELECT?
SELECT
    box_name,  
    SUM(CASE WHEN (fruit_name='apple') THEN 1 ELSE 0 END) AS fruit_apple,
    SUM(CASE WHEN (fruit_name='orange') THEN 1 ELSE 0 END) AS fruit_orange,
	  .... и тд
FROM 
    your_table
GROUP BY 
    box_name
Похоже тема по группировкам данным, просто нужно сгруппировать и посчитать сколько чегоSELECT `box_name`, `fruit_name`, COUNT(`id`) FROM `TBL1` GROUP BY `box_name`, `fruit_name`
total_fruit наверно придется подзапросом считать или на уровне php или что у вас там