MySQL查询不会返回返回值或给出错误消息。 (查询优化)

时间:2015-11-17 16:53:47

标签: mysql phpmyadmin easyphp

作为家庭作业,我已经获得了三个不同的reddit帖子的数据转换,我应该写一堆查询。数据转储的大小为12mb,1gb和2.5gb压缩。我开始使用最小的数据集并为它们编写查询,但是当我在较大的数据集上运行查询时,它们需要很多时间来执行。它们中的大多数都可以工作,但其中一个查询需要很长时间才能执行。

查询应该是获得帖子得分最多/最少的用户(用户总和得分)。

(SELECT `post_author` AS AUTHOR, SUM(`post_score`) AS SCORE FROM `post` GROUP BY `post_author` ORDER BY `SCORE` ASC LIMIT 1)
UNION
(SELECT `post_author` AS AUTHOR, SUM(`post_score`) AS SCORE FROM `post` GROUP BY `post_author` ORDER BY `SCORE` DESC LIMIT 1)

我使用EasyPHP来托管phpMyAdmin数据库。

现在我不确定这是一个记忆问题还是一个时间问题。我尝试过提升ExecTimeLimit'在phpMyAdmin配置中,但似乎没有什么区别。此外,我将非常感谢有关我可以调查以使查询更有效的任何提示。

创建SQL:

Create SQL: SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";

CREATE TABLE IF NOT EXISTS `post` (
  `post_id` bigint(11) NOT NULL,
  `post_body` mediumtext NOT NULL,
  `post_parent` int(11) NOT NULL,
  `post_link` int(11) NOT NULL,
  `post_created` date NOT NULL,
  `post_author` varchar(50) NOT NULL,
  `post_sub_id` int(11) NOT NULL,
  `post_score` int(11) NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

0 个答案:

没有答案