Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.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 运行该查询_Mysql - Fatal编程技术网

Mysql 运行该查询

Mysql 运行该查询,mysql,Mysql,运行该查询


运行该查询 我可能错了,但子查询很重。因此,如果使用
JOIN
ON
子句执行它,速度会更快,因为它不会检索子选择的所有结果。在第二个查询中,您首先检索子选择的所有结果,然后查看它。我可能错了,但子查询非常繁重。因此,如果使用
JOIN
ON
子句执行它,速度会更快,因为它不会检索子选择的所有结果。在第二个查询中,首先检索子选择的所有结果,然后查看。谢谢,我在问题中添加了
EXPLAIN
。我对这种查询计划不太熟悉,但显然它们完全不同。谢谢,我在问题中添加了
EXPLAIN
。我对这种查询计划不太熟悉,但显然它们完全不同。谢谢,我添加了查询的解释,但我在阅读时遇到了一些困难!谢谢,我添加了查询的解释,但是我在阅读时遇到了一些麻烦!谢谢,所有的事情都指向支持
JOIN
,但我仍然对差异的大小感到困惑。考虑到Aaron Miller对我的one-IN子句的回答根本不使用索引,正如我所说的,只是在表中循环检查每一行是否匹配IN-cluase的值集;而JOIN首先构建临时表(并且您正在使用该联接的索引,对吗?),然后获取行。这样,遍历500万行将花费大量时间(实际上,这取决于一些数据库设置和环境)。希望这能有所帮助。谢谢,所有的事情都指向支持
JOIN
,但我仍然对差异的大小感到困惑。考虑到Aaron Miller对我的一个IN子句的回答根本不使用索引,正如我所说的,只是在表中循环检查每一行是否匹配IN-cluase的值集;而JOIN首先构建临时表(并且您正在使用该联接的索引,对吗?),然后获取行。这样,遍历500万行将花费大量时间(实际上,这取决于一些数据库设置和环境)。希望有帮助。
SELECT DISTINCT (date_time)
FROM my_table
JOIN (SELECT DISTINCT (DATE_ADD( date_time, INTERVAL 1 HOUR)) date_offset
      FROM my_table) offset_dates
ON date_time = date_offset
SELECT DISTINCT(date_time)
FROM my_table
WHERE date_time IN (SELECT DISTINCT(DATE_ADD(date_time, INTERVAL 1 HOUR))
                    FROM my_table)
id  select_type table       type    possible_keys   key     key_len ref                         rows    Extra
1   PRIMARY     <derived2>  ALL     NULL            NULL    NULL    NULL                        1710    Using temporary
1   PRIMARY     my_table    ref     PRIMARY         PRIMARY 8       offset_dates.date_offset    555     Using index
2   DERIVED     my_table    index   NULL            PRIMARY 13      NULL                        5644204 Using index; Using temporary


id  select_type        table    type    possible_keys   key     key_len ref     rows    Extra
1   PRIMARY            my_table range   NULL            PRIMARY 8       NULL    9244    Using where; Using index for group-by
2   DEPENDENT SUBQUERY my_table index   NULL            PRIMARY 13      NULL    5129983 Using where; Using index; Using temporary