如何编写自联接查询以检查同一实体/字段上的条件

时间:2013-12-05 09:35:19

标签: mysql sql self-join

我有以下架构 enter image description here

因此,如果用户希望视频私有,则在添加视频时发送“1”,以便该视频仅供该特定用户使用

如果用户选择 0,则该视频可供所有用户使用

以下是示例数据: enter image description here

我有大量信息,所以我想使用限制

查询20-20条记录

我试过试试

select * from test where userid="2" and public/private ="0"

但这只会返回一条记录,即videoid ='1'

如果我查询

select * from test where userid=4 and public/private='1'

我还希望将videoid 1,2视为公开

希望你明白我的意思! 你能帮我设计一下这个问题..

1 个答案:

答案 0 :(得分:1)

因此,您希望该用户的所有私人列表以及任何用户的所有公开列表

select * from test where userid="2" or public/private ="0"