小编Rya*_*yan的帖子

MySQL查询性能 - 查询/架构/索引?

基本上有一些查询的性能问题,主要是我最大的表,其中包含调用数据.

主查询包含相当多的左连接和子选择,但在我正在运行查询的情况下,我希望返回1.3M调用,查询只是没有这样做.必须在7分钟停止它意味着某处肯定存在问题.

我缩小了主查询并测试了最简单的子选择连接

SELECT
    DateStart,
    ID,
    NumbID,
    EffectiveFlag,
    OrigNumber
FROM calls
WHERE 
    DateStart <= '2013-12-31'
AND DateStart >= '2013-01-01'
AND CallLength >= '00:00:00' 
AND Direction = '1'
AND CustID IN (474,482,250,268,197,604,132,359,279,441,118,448,152,133,380,162,249,679,226,259,2450,2408,2451,2453,2439,2454,2444,2445,2452)
Run Code Online (Sandbox Code Playgroud)

甚至该查询需要4.5s - 因此当它是具有其他连接和子选择的查询中的子选择时,我可以想象为什么整个查询不可用.

上述查询的解释声明是

+----+-------------+-------+-------+-------------------------------------------------------------------------------------------------------+----------------------+---------+------+---------+-------------+
| id | select_type | table | type  | possible_keys                                                                                         | key                  | key_len | ref  | rows    | Extra       |
+----+-------------+-------+-------+-------------------------------------------------------------------------------------------------------+----------------------+---------+------+---------+-------------+
|  1 | SIMPLE      | calls | range | idx_CustID,idx_DateStart,idx_CustID_DateStart,idx_CustID_TermNumber,idx_Direction                     | idx_CustID_DateStart | 7       | NULL | 1660009 | Using where | …
Run Code Online (Sandbox Code Playgroud)

mysql sql performance

6
推荐指数
1
解决办法
266
查看次数

标签 统计

mysql ×1

performance ×1

sql ×1