使用索引;使用临时,它会减慢订单吗?

时间:2013-01-30 04:48:58

标签: mysql performance query-optimization

我有一个sql查询,它很复杂且难以调试,因为我通过自己编写的querybuilder类生成它。但它的全部工作(它只是变量名称不是用户友好的)。现在当我运行解释时,它在第一行给出了以下输出:

id  select_type table   type    possible_keys   key key_len ref rows    Extra
1   PRIMARY         user1_  const   PRIMARY         PRIMARY 257 const   1   Using index; Using temporary

现在我想知道,如果这是一个问题(性能问题),当我拥有大约100k的大用户群时。请告诉我是否需要提供数据库架构或查询(它是一个8k字符长的查询)。

1 个答案:

答案 0 :(得分:1)

任何时候你看到"使用临时"你是为了一个受伤的世界。这涉及创建一个临时文件并在以后阅读它。尽你所能避免这种情况,特别是对于较大的结果集,但有时你只需付出代价,因为没有别的办法。

请记住,这可能需要一个应该在1毫秒内执行的查询需要5毫秒,而不是特别严重的延迟,但如果它通常需要10秒而是需要50秒,您将开始感受到痛苦。