SQL查询找到特定博客帖子的作者?

时间:2015-05-27 20:01:21

标签: php mysql database

您好我正在尝试从我的数据库中提取作为某个博文的作者的用户的first_name但是有点问题。我真的很困惑如何将两个表连接在一起,并且无法真正找到一个简单的解释。这是我的两张桌子:

CREATE TABLE IF NOT EXISTS `goldhub_user` (
  `user_id` int(11) NOT NULL AUTO_INCREMENT,
  `email` varchar(20) NOT NULL,
  `username` varchar(50) NOT NULL,
  `password` char(40) NOT NULL,
  `first_name` varchar(20) NOT NULL,
  `last_name` varchar(20) NOT NULL,
  PRIMARY KEY (`user_id`),
  UNIQUE KEY `goldhub_email` (`email`)
)

CREATE TABLE IF NOT EXISTS `goldhub_post` (
  `post_id` int(11) NOT NULL AUTO_INCREMENT,
  `user_id` int(11) DEFAULT NULL,
  `category_id` int(11) DEFAULT NULL,
  `post_content` varchar(255) DEFAULT NULL,
  `post_date` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`post_id`),
  KEY `user_id` (`user_id`),
  KEY `category_id` (`category_id`)
)

非常感谢任何指导。

2 个答案:

答案 0 :(得分:1)

SELECT goldhub_user.first_name FROM goldhub_post
INNER JOIN goldhub_user ON goldhub_user.user_id = goldhub_post.user_id
WHERE goldhub_post.post_id = ?

?替换为帖子的ID。

答案 1 :(得分:0)

尝试类似这样的事情,如果您根据帖子

发布条件以获取作者,它会对我有所帮助
SELECT gu.first_name FROM goldhub_user gu
LEFT JOIN  goldhub_post gp
     ON gu.user_id = gp.user_id
WHERE gp.post_id = ?
AND gp.category_id = ?;