Попытка получить список последних сообщений на форуме от пользователя, упорядоченных по дате его создания.
Проблема в том, что сообщения разбиты по темам и ответам, поэтому мне нужно получить текст ответаиз другой таблицы, если последнее сообщение не относится к самой теме.
Попытка использовать CASE для переключения между подзапросом, если это ответ, в противном случае используйте текст темы.
SELECT
t.`topic_id`,
t.`topic_title`,
t.`last_post_date`,
t.`last_post_id`,
CASE WHEN t.`replys` > 0 THEN (
SELECT
`reply_text` AS 'text'
FROM
`forum_replies`
WHERE
`post_id` = t.`last_post_id`
) ELSE t.`topic_text` AS 'text'
END
FROM
`forum_topics` t
WHERE
t.`approved` = 1 AND t.`forum_id` IN (1) AND t.last_post_user_id = 1
ORDER BY
t.`last_post_date`
DESC
LIMIT 5
ошибка:
1064 - у вас ошибка в синтаксисе SQL;проверьте руководство, соответствующее вашей версии сервера MySQL, на предмет правильного синтаксиса для использования
рядом с текстом 'AS' 'END FROM forum_topics
t WHERE t. approved
= 1 AND t`f' в строке13