usare il where per "collegare" le tabelle è una soluzione abbastanza orrida ci sono le JOIN apposta per questo!

codice:
SELECT
  *

FROM
  nuke_bbposts
  INNER JOIN nuke_bbposts_text ON nuke_bbposts.post_id = nuke_bbposts_text.post_id

WHERE
  topic_id = 1

ORDER BY
  topic_id
in questo modo spieghi a mysql che le tabelle sono relazionate tramite quella chiave e lui si organizza la ricerca in modo più efficente, inoltre usando l'inner join ti verranno fuori valori ESCLUSIVAMENTE presenti in entrambe le tabelle, se vuoi risultati dalla prima a prescindere dalla presenza dei dati nella seconda allora si va ad usare una LEFT JOIN invece che una INNER JOIN

Qui c'è il riferimento ufficiale al manuale di mysql
http://dev.mysql.com/doc/refman/5.0/en/join.html

Qua invece ci sono un paio di link che potrebberò risultarti utili
http://database.html.it/guide/lezion...so-delle-join/
http://database.html.it/articoli/leg...elle-in-mysql/