Привет всем, помогите решить, как лучше организовать хранение и вывод прикреплённых файлов на php+sql. Т.е. пользователь может прикреплять любое количество файлов к сообщению.
Итак, есть таблицы:
users (id | login)
mail (id | author | files) -- в поле `files` сейчас хранятся id прикреплённых файлов из таблицы `files`, разделённые пробелами
files (id | filename)
В принципе, есть в уме рабочий вариант, но он напрягает по затратам. Т.е. в цикле выводятся все сообщения, а внутри вывода каждого сообщения есть цикл, разбирающий строку `files` и делающий кучу выборок из таблицы `files`. Т.е. если на странице 10 сообщений и у каждого сообщения 10 прикреплённых файлов, то получается, что делается 110 выборок. Круто, да? В общем, подскажите, кто что может, пожалуйста.
P.S. Хранить в таблице сообщений сами имена очень не хочется. Шардинг в планах, но принципиально проблему не решает.