当连接列具有相似的名称时,如何从2个mySQL表中输出混合数据?

时间:2015-04-06 22:20:43

标签: mysql sql tsql

我想要实现的是在时间戳排序的一个循环中显示所有已发布的文章和特定user_id的所有已发布问题。简单来说,要展示混合文章和问题的所有内容。

我的数据库结构如下,我也放了个人资料表。

我错误的SQL查询是:

SELECT * 
FROM articles
JOIN questions ON articles.user_id = questions.user_id
WHERE articles.user_id =  '38'
AND questions.user_id =  '38'
AND questions.publish =  '1'
AND articles.publish =  '1'
ORDER BY questions.timestamp DESC

文章表

id
publish
user_id
user_name
article_title
article_content
article_category
timestamp

问题表

id
publish
user_id
user_name
question_title
question_content
question_category
timestamp

配置文件

user_id

1 个答案:

答案 0 :(得分:0)

只需使用连接,外连接将从两个表中获取所有匹配的记录:

SELECT * 
FROM articles
FULL OUTER JOIN questions ON articles.user_id = questions.user_id
WHERE articles.user_id =  '38'
ORDER BY questions.timestamp DESC