Использовать GROUP BY по полю cat. Потом, если вы, например пишете на PHP, то разобрать по группам в ассоциативный массив.
foreach ($res as $row) {
$result[$row['cat']][] = $row['name'];
}
И этот массив выводите где надо.
Такой код, в принципе, будет работать даже если вы не будете группировать данные в sql.