[SQL] Запрос на объединение нескольких таблиц


Warning: WP_Syntax::substituteToken(): Argument #1 ($match) must be passed by reference, value given in /var/www/u2424/data/www/bulkin.me/wp-content/plugins/wp-syntax/wp-syntax.php on line 380

Возникла задача просмотреть в БД личные сообщения пользователей с форума IPB. При этом хочется вывести их в удобном для понимания виде: ID сообщения, автор, тема, тело сообщения.

Т.к. эти данные хранятся в трех разных таблицах, то на помощь приходит оператор JOIN:

SELECT db_name.message_posts.msg_id, db_name.message_posts.msg_author_id, db_name.members.name, db_name.message_topics.mt_to_member_id, db_name.message_topics.mt_title, db_name.message_posts.msg_post
FROM db_name.message_topics
INNER JOIN db_name.message_posts ON db_name.message_posts.msg_topic_id = db_name.message_topics.mt_id
INNER JOIN db_name.members ON db_name.members.member_id = db_name.message_topics.mt_starter_id
ORDER BY msg_id DESC;

Результаты выборки упорядочены в обратном порядке для того, чтобы видеть самые последние сообщения.