You could obtain the table using a single UNION query
SELECT 'staff', COUNT(IF(`staff` = 'negative', 1, NULL)) negative, COUNT(IF(`staff` = 'positive', 1, NULL)) positive
FROM responses
UNION
SELECT 'cleanliness', COUNT(IF(`cleanliness` = 'negative', 1, NULL)) negative, COUNT(IF(`cleanliness` = 'positive', 1, NULL)) positive
FROM responses
UNION
SELECT 'food', COUNT(IF(`food` = 'negative', 1, NULL)) negative, COUNT(IF(`food` = 'positive', 1, NULL)) positive
FROM responses
UNION
SELECT 'check-in/out', COUNT(IF(`check-in/out` = 'negative', 1, NULL)) negative, COUNT(IF(`check-in/out` = 'positive', 1, NULL)) positive
FROM responses
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…