所以我有两个数据库表,叫做“视频”和“相关的”。表“视频”有3列: id、视图和类别。表" related“有2列:a(与表”视频“的列id相同)和b(相关视频的id为a)。
下面是表“视频”的一个例子:
ID 视图\类别
1\x 11000年音乐
2\x{e76f} 13000艺术
3-- 14000 -音乐
4? 60000 ?音乐
5- 80000 -艺术
.
表“相关”的一个例子
a b
1/2
1/3
2/2-1
2/2-4
2/2-5
.
如您所见,相关视频的id也可以在表中找到“视频”。
所以现在我有了这样的看法:
我需要把它转换成SQL查询。我需要说明以下几点:在所有浏览量超过10000的视频I中,哪些视频的相关视频有类别=“音乐”。
我希望你不要像你的时间一样困惑,我在等待任何可能的帮助.
发布于 2014-05-20 19:18:05
select *
from video v1
where v1.id in (
select r.a
from related r
join video v2 on r.b = v2.id
where v2.category = 'music' )
and v1.views >= 10000
编辑
在下面的评论中,你问了一些与最初问题完全不同的问题--你现在想要的是“音乐”类别中的视频,相关视频的浏览量超过10000。新问题的SQL是这样的。
select *
from video v1
where v1.id in (
select r.a
from related r
join video v2 on r.b = v2.id
where v2.views > 10000 )
and v1.category = 'music'
但请下次当你想问一个与原来不同的问题时,只需提出一个新的问题。
https://stackoverflow.com/questions/23768044
复制相似问题