Joining two select queries and ordering results

Posted by user1 on Stack Overflow See other posts from Stack Overflow or by user1
Published on 2013-11-11T09:33:46Z Indexed on 2013/11/11 9:53 UTC
Read the original article Hit count: 132

Filed under:
|
|

Basically I'm just unsure as to why this query is failing to execute:

(SELECT replies.reply_post, replies.reply_content, replies.reply_date AS d, members.username
     FROM (replies) AS a 
        INNER JOIN members ON replies.reply_by = members.id)

            UNION

(SELECT posts.post_id, posts.post_title, posts.post_date AS d, members.username 
     FROM (posts) as b 
        WHERE posts.post_set = 0 
           INNER JOIN members ON posts.post_by = members.id)

ORDER BY d DESC LIMIT 5

I'm getting this error:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'a INNER JOIN members ON replies.re' at line 2

All I'm trying to do is select the 5 most recent rows (dates) from these two tables. I've tried Join, union etc and I've seen numerous queries where people have put another query after the FROM statement and that just makes no logical sense to me as to how that works?

Am I safe to say that you can join the same table from two different but joined queries? Or am I taking completely the wrong approach, because frankly I can't seem see how this query is failing despite reading the error message.

(The two queries on there own work fine)

© Stack Overflow or respective owner

Related posts about mysql

Related posts about sql