mysql - 选择用户未观看的所有电影并将结果限制为 20
问题描述
我需要选择用户尚未观看的所有电影。
获取最后 20 部电影的我的 SQL 查询如下所示:
SELECT movies.* FROM movies, hdd WHERE hdd.id=movies.hdd_id and hdd.status='1' and movies.skip!='1' order by id desc limit 20
电影表如下所示:
id int(11) Incrément automatique
hdd_id int(20)
tmdb_id int(20) NULL
imdb_id text NULL
file_path text
ftp_path text NULL
file_name text
resolution text NULL
timestamp int(11) NULL
skip int(2)
credits int(2)
title varchar(255) NULL
original_title varchar(255) NULL
adult int(2) NULL
categ text NULL
collection text NULL
companies text NULL
language text NULL
lang text NULL
rating text NULL
mpaa text NULL
tagline text NULL
overview text NULL
budget text NULL
homepage text NULL
popularity text NULL
runtime varchar(255) NULL
revenue varchar(255) NULL
release_date date NULL
vote_average varchar(255) NULL
vote_count varchar(255) NULL
movie_poster_path varchar(255) NULL
movie_poster varchar(255) NULL
movie_backdrop_path varchar(255) NULL
movie_backdrop varchar(255) NULL
仅当 HDD 状态为在线且爬网程序未跳过它时,才会选择电影。
现在的问题是监视日志在一个单独的表中:该表如下所示:
id int(11) Incrément automatique
type varchar(255)
ref int(9) NULL
membre int(9) NULL
counter int(9) NULL
duration varchar(255)
currentTime varchar(255)
membre 是用户 id,ref 是电影 tmdb_id
这就是我尝试过的票价
SELECT movies.* FROM movies, hdd, watch WHERE hdd.id=movies.hdd_id and hdd.status='1' and movies.skip!='1' and (watch.membre='$_SESSION[id]' and watch.ref=movies.tmdb_id) order by id desc limit 20
但这当然行不通。我认为输出是向后的。它不是返回未观看的内容,而是返回已观看的电影。
解决方案
您需要从已观看的整个列表中筛选电影。使用left join
它可以过滤。尝试这个。
SELECT movies.* FROM movies left join watch on watch.ref=movies.tmdb_id, hdd
WHERE hdd.id=movies.hdd_id and hdd.status='1'and movies.skip!='1' and
watch.membre = '$_SESSION[id]'
order by id desc limit 20
推荐阅读
- asp.net-core - 使用外部提供者登录时增加超时
- php - 终端中的 Cpanel php 版本与 MultiPHP Manager 中的 php 版本不同
- swift - iOS 14 UIColorPicker 吸管工具未返回所选颜色
- django - 添加每个新帖子时如何向 PositiveIntegerField 模型字段添加 +1?
- javascript - 创建在 2d javascript 数组中的列上选择的数据子集
- android - ScrollView 不提供滚动功能
- azure - Azure python sdk存储表备份表返回1000多行
- ruby-on-rails - RSpec 存根一个在控制器内部使用的方法
- javascript - 点击事件发生时如何捕获最外部的元素
- r - GGplot 2:如何在条形图中从最大到最小设置x轴