Php 选择两个日期之间的值,再选择一个要在这两个日期之间签入的值

Php 选择两个日期之间的值,再选择一个要在这两个日期之间签入的值,php,mysql,Php,Mysql,我计划用PHP编写视频脚本。我有流动问题:: 我想选择一个在过去24小时内未被当前用户IP看到的视频 我使用以下sql命令: SELECT videos.VideoID FROM videos,Video_log WHERE Videos.VideoID=Video_log.VideoID Video_log.TIMESTAMP NOT BETWEEN '$today' AND '$yesterday' AND Video_log.ip != '127.0.0.1' 数据库表: Vid

我计划用PHP编写视频脚本。我有流动问题:: 我想选择一个在过去24小时内未被当前用户IP看到的视频

我使用以下sql命令:

SELECT videos.VideoID FROM  videos,Video_log WHERE Videos.VideoID=Video_log.VideoID Video_log.TIMESTAMP NOT BETWEEN  '$today' AND  '$yesterday' AND Video_log.ip != '127.0.0.1' 
数据库表:

Videos Table :  
VideoID 
VideoURL
表二:

Video_log Table :::
viewID
VideoID
ViewDate
IP
但此sql查询返回在过去24小时(今天)由同一用户IP观看的视频的视频Id

更简单的是:


此ip在过去24小时内未被查看,请选择视频ID

您的逻辑在
上向后,而不是在
之间。第一个日期必须在第二个日期之前:

SELECT videos.VideoID
FROM  videos join
      Video_log
      on Videos.VideoID=Video_log.VideoID
where Video_log.TIMESTAMP NOT BETWEEN '$yesterday' and '$today' AND
      Video_log.ip != '127.0.0.1'

我还通过将条件移动到
on
子句中,修复了join语法。您还应该学习如何将参数传递到查询中,而不是将它们直接放入字符串中。

这很有效。。。但是IP在表中存储了很多次,因此它不会通过查询返回任何其他视频