g0rdy
02-04-2007, 11:21 PM
I'm having trouble getting a query to work
mysql> SELECT thread.title, thread.threadid, thread.postuserid, attachment.attachmentid FROM thread LEFT JOIN attachment ON (attachment.userid = thread.postuserid) WHERE thread.forumid = 4 ORDER BY threadid DESC LIMIT 7;
+--------------------+----------+------------+--------------+
| title | threadid | postuserid | attachmentid |
+--------------------+----------+------------+--------------+
| topic first | 2996 | 4 | 488 |
| topic second | 2985 | 254 | 544 |
| topic third | 2985 | 254 | 545 |
| topic fourth | 2984 | 511 | NULL |
| repeats topicfourth| 2958 | 14 | 372 |
| repeats topicfourth| 2958 | 14 | 373 |
| repeats topicfourth| 2958 | 14 | 374 |
+--------------------+----------+------------+--------------+
The above query stumbles when it hits the NULL.. I've tried several other queries here and it either shows only topics from a forum with attachments or only topics without attachments - I want it to show both!
What I wish to acheive:
On a non vB page grab the last 7 threads from a specific forum and output the results with the first attachment then the topic title next to it BUT if one of the topics does not have an attached image in the first thread to still output the post title -
example:
<attachment> <topic title last>
<attachment> <topic title last>
<no attachment> <topic title last>
<attachment> <topic title last>
<no attachment> <topic title last>
<attachment> <topic title last>
Desired Query:
+----------------------+----------+------------+--------------+
| title | threadid | postuserid | attachmentid |
+----------------------+----------+------------+--------------+
| topic last | 2996 | 4 | 488 |
| topic second to last | 2985 | 254 | NULL |
| topic third to last | 2985 | 254 | 545 |
| topic fourth to last | 2984 | 511 | NULL |
| topic fifth to last | 2958 | 14 | 372 |
| topic sixth to last | 2958 | 14 | NULL |
| topic seventh to last| 2958 | 14 | 374 |
+----------------------+----------+------------+--------------+
Thanks for any help -
-gordy
mysql> SELECT thread.title, thread.threadid, thread.postuserid, attachment.attachmentid FROM thread LEFT JOIN attachment ON (attachment.userid = thread.postuserid) WHERE thread.forumid = 4 ORDER BY threadid DESC LIMIT 7;
+--------------------+----------+------------+--------------+
| title | threadid | postuserid | attachmentid |
+--------------------+----------+------------+--------------+
| topic first | 2996 | 4 | 488 |
| topic second | 2985 | 254 | 544 |
| topic third | 2985 | 254 | 545 |
| topic fourth | 2984 | 511 | NULL |
| repeats topicfourth| 2958 | 14 | 372 |
| repeats topicfourth| 2958 | 14 | 373 |
| repeats topicfourth| 2958 | 14 | 374 |
+--------------------+----------+------------+--------------+
The above query stumbles when it hits the NULL.. I've tried several other queries here and it either shows only topics from a forum with attachments or only topics without attachments - I want it to show both!
What I wish to acheive:
On a non vB page grab the last 7 threads from a specific forum and output the results with the first attachment then the topic title next to it BUT if one of the topics does not have an attached image in the first thread to still output the post title -
example:
<attachment> <topic title last>
<attachment> <topic title last>
<no attachment> <topic title last>
<attachment> <topic title last>
<no attachment> <topic title last>
<attachment> <topic title last>
Desired Query:
+----------------------+----------+------------+--------------+
| title | threadid | postuserid | attachmentid |
+----------------------+----------+------------+--------------+
| topic last | 2996 | 4 | 488 |
| topic second to last | 2985 | 254 | NULL |
| topic third to last | 2985 | 254 | 545 |
| topic fourth to last | 2984 | 511 | NULL |
| topic fifth to last | 2958 | 14 | 372 |
| topic sixth to last | 2958 | 14 | NULL |
| topic seventh to last| 2958 | 14 | 374 |
+----------------------+----------+------------+--------------+
Thanks for any help -
-gordy