Доброго времени суток.
Задача у меня до смешного простая, но как выяснилось решить ее не просто.
В панели пользователя нужно показать сколько у него непрочитанных сообщений, сколько черновиков новостей, сколько черновиков записей в блог и если админ, то сколько материалов на утверждение.
С php частью вроде все просто, берем массив полученный из базы и перебором массива смотрим чего нам надо показывать а чего нет.
Проблема как раз в массиве. Можно сделать 4 запроса и дело с концом, но хочется более быстрое решение и одним запросом. Выбрать все данные из базы без условий не проблема, но массив получается уж очень увесистый, потому нужно добавить условия выборки, вот тут и начинаются проблемы.
Вот что мы имеем.
Таблица с сообщениями ( Столбцы указываю только те которые нужно выбирать )
message_id | message_to | message_read
Таблица с новостями
news_id | news_user_id | news_publish
Таблица записей в блог аналогично новостям
blog_id | blog_user_id | blog_publish
Таблица утверждений, нужно просто узнать есть они или нет.
submit_id
Так вот, можно ли выбрать данные из всех этих таблиц с условием что message_to=$user_id, news_user_id=$user_id, blog_user_id=$user_id и message_read=0, news_publish=0, blog_publish=0 и собственно есть ли вообще submit_id (Отредактировано автором: 27 Апреля, 2013 - 21:01:52)
|