Coldfusion QoQ令人难以置信的缓慢

时间:2013-07-03 15:44:56

标签: coldfusion qoq

查询通常从缓存的查询中获取大约40,000行。无论出于何种原因,QoQ只是缓慢。我试图删除大部分逻辑(不同,分组等)无济于事,这使我相信设置中出现了问题。任何人都知道发生了什么以及如何加快速度?

subcats (Datasource=, Time=42979ms, Records=14)

            SELECT 
                DISTINCT(SNGP.subtyp1) AS cat,
                MIN(SNGP.sortposition) AS sortposition,
                MIN(taxonomy.web_url) AS url
            FROM
                SNGP,
                taxonomy
            WHERE
                SNGP.typ > ''
                AND UPPER(SNGP.typ) <> 'EMPTY'
                 AND UPPER(SNGP.DEPT) = 'SHOES' AND UPPER(SNGP.TYP) = 'FASHION' AND SNGP.SUBTYP1 <> 'EMPTY'
            GROUP BY SNGP.subtyp1
            ORDER BY SNGP.sortposition ASC

1 个答案:

答案 0 :(得分:0)

  1. 你必须做一个QoQ;您的原始查询是否可以修改为您提供所需的数据?您是否可以按计划缓存所有可能的QoQ?

  2. 您从两个表(SNGP,分类法)中进行选择,但我看不到它们之间的连接

  3. web_url听起来像一个字符串,你为什么要对它做一个MIN()?

  4. 在WHERE子句中移动第一个限制性最强的部分。例如如果typ > ''将结果限制为1000行,但UPPER(SNGP.typ) <> 'EMPTY'会将其限制为仅100行,那么您应该先将其放在第一行。这是一般的SQL建议,不确定它与QoQ的兼容性。

  5. 40k行然后只选择14个结果听起来像数据不匹配;在尝试QoQ之前,还有其他方法可以让您的数据受到更多限制。