【发布时间】:2011-01-10 22:17:09
【问题描述】:
我们正在对 mysql 数据库发出一些长时间运行的查询。 (上下文是离线数据分析,而不是应用程序。)我们将如何进行研究取决于我们在此过程中获得的结果。如果能够在查询完成之前查看(部分)结果由 SELECT 语句生成,这对我们很有用。
这可能吗?还是我们一直等到查询完成(考虑到数据集的大小可能需要几个小时)才能查看在它运行的最初几秒钟内生成的结果?
感谢您的帮助。
【问题讨论】:
-
为什么不使用 LIMIT 拆分结果?
-
@Moak:谢谢你的想法!但是我们尝试了这个,不幸的是它不起作用。将“LIMIT 0, one_fifth_of_the_returned_records”附加到查询的运行时间与没有 LIMIT 的相同查询一样长。它不会在较短的时间内产生前五分之一的结果。
-
如果您实际上可以以完整形式发布长期运行的查询之一,那么在这里避免“心理答案”当然会容易得多。
-
欢迎来到 2018,一切都没有改变,但我可以告诉你的是,你可以尝试在查询中引入索引,这样
WHERE+LIMIT会更快