Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/76.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 具有日期范围的SQL IN运算符_Mysql_Sql - Fatal编程技术网

Mysql 具有日期范围的SQL IN运算符

Mysql 具有日期范围的SQL IN运算符,mysql,sql,Mysql,Sql,我试图从表2中的表1中进行选择,其中表2包含特定的日期范围。我试过很多不同的问题;其中一些我收到语法错误,还有一些日期范围不起作用 当前: SELECT DISTINCT f FROM table1 WHERE f IN(f.table2) as s WHERE s.time > '2013-01-01 00:00:00' AND s.time < '2013-01-07 00:00:00' ORDER BY s.time 我找不到更深入的例子了。如有任何建议,请留下评论,以获取

我试图从表2中的表1中进行选择,其中表2包含特定的日期范围。我试过很多不同的问题;其中一些我收到语法错误,还有一些日期范围不起作用

当前:

SELECT DISTINCT f
FROM table1
WHERE f IN(f.table2) as s
WHERE s.time > '2013-01-01 00:00:00' AND s.time < '2013-01-07 00:00:00'
ORDER BY s.time 
我找不到更深入的例子了。如有任何建议,请留下评论,以获取更多信息


WHERE子句在查询中只能存在一次,除非它在
子查询中,若要将
in
子句与另一个
选择
一起使用,您需要遵循以下模式:

SELECT *
FROM TABLE1
WHERE X IN ( SELECT OneColumnOnly FROM Table2)
  AND TIME BETWEEN '1/1/2012' AND '1/1/2013'

表1中的列X必须与表2中的
OneColumnOnly
类型相同,或者像
INT
隐式转换为
VARCHAR

请编辑您的问题并显示示例数据和所需结果。您可能会惊讶地发现,非工作代码通常不能很好地表达意图。@GordonLinoff-我添加了一张图片,试图展示我所拥有的和我所期望的。我设定了不同的日期,但我主要是想表明我希望在一周内安排好日期。simle table1和table2应该是什么样子?联接会更快更清晰,但问题已经很模糊了……我能不能在
语句之前的
in
语句中使用别名<代码>意外标记:在第1行附近,您必须发布SQL以便我回答。
SELECT *
FROM TABLE1
WHERE X IN ( SELECT OneColumnOnly FROM Table2)
  AND TIME BETWEEN '1/1/2012' AND '1/1/2013'