首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >获得用户的书面帖子和他提升的职位

获得用户的书面帖子和他提升的职位
EN

Stack Overflow用户
提问于 2012-05-29 15:43:24
回答 2查看 69关注 0票数 1

目的是有点难以解释,所以请通知我,如果你需要更多的信息。

我正在创建一个博客,人们可以在这里发表文章,但也可以推广其他用户的帖子。用户职位和晋升职位将出现在其配置文件页面中。

为了给你更多的信息,这件事已经在tumblr或者twitter上完成了(通过转发):在用户配置文件中,我们有它的tweet,但也有他转发的tweet。

以下是数据库表:

表“员额”:

  • id
  • author_id
  • title
  • content
  • created

以及“晋升”表(person X晋升Y员额):

  • id
  • promoter_id (提升职位Y: X的用户id )
  • post_id(晋升职位: Y)
  • created

)

给定一个用户id,我想检索他写的帖子和他提升的帖子。问题是: SQL (特别是MySQL)查询是什么?

并根据“创建”字段对列表进行排序。

提前谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-05-29 20:19:29

好的,我知道了。以下是答案:

代码语言:javascript
复制
SELECT *
FROM Posts
LEFT JOIN Promotions ON Promotions.post_id = Posts.id
WHERE Posts.author_id = $userId
OR Promotions.promoter_id = $userId

所以,当混合左联接和OR条件时,魔术就会发生。

希望能帮上忙。

PS。感谢所有与会者。

票数 0
EN

Stack Overflow用户

发布于 2012-05-29 15:48:50

用户编写的帖子很简单:

代码语言:javascript
复制
select * 
from posts 
where author_id=@your_user_id

要获得用户晋升的帖子,您可以:

代码语言:javascript
复制
select * 
from Promotions
where promoter_id =@your_user_id

当然,您可能需要有关用户提升的帖子的信息,因此您必须加入两个表:

代码语言:javascript
复制
select p.title
from posts P join Propotions pro on pro.postId=p.id
where pro.promoter_id =@your_user_id
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10802397

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档