以下是根据提供的内容重构的SQL查询语句:

SELECT dw_posts.ID, dw_posts.post_title, dw_posts.post_content
FROM dw_posts
INNER JOIN dw_term_relationships ON (dw_posts.ID = dw_term_relationships.object_id)
WHERE 1=1
AND dw_posts.ID NOT IN (291259)
AND(dw_term_relationships.term_taxonomy_id = 18398 )
AND dw_posts.post_type = 'post'
AND (dw_posts.post_status = 'publish')
GROUP BY dw_posts.ID
ORDER BY RAND()
LIMIT 0, 6;

这段代码首先从dw_posts表中选择IDpost_titlepost_content字段,然后通过INNER JOIN连接dw_term_relationships表。在WHERE子句中,我们添加了额外的条件,以确保只返回满足特定条件的记录。最后,使用GROUP BYID分组结果,并使用ORDER BY RAND()随机排序结果,限制输出为前6条记录。