1. Можно хранить все аттачи для сообщения в отдельном поле в формате json, например. Выводить аттач через javascript, без лишних запросов, просто генерируйте линк на лету. Например, по хешу из id + '.mp3' и получите ссылку на аттач в mp3. Тип аттача можно также хранить в json в определенном свойстве.
2. Можно делать несколько дополнительных запросов и получать готовые ссылки на стороне сервера.
3. Можно сделать отдельную таблицу для всех аттачей и получать их при выводе сообщения по message_id.
+ последние сообщения можно (и наверное нужно) кешировать, так что, на вскидку, любой метод подойдет, мне пока не понятны критичные места.