我使用知识软件进行数据分析,我遇到了性能问题,现在我正在观看数据集审核'记录以查看系统执行的查询。我发现这个对我来说是一个废话:
SELECT COUNT(*)
FROM
(select TOP(100) PERCENT "ATC_1" AS "ATC_1"
from
(SELECT [ID_AFo]
,[ATC]
,[ATC_1]
,[ATC_3]
,[ATC_4]
,[ATC_5]
FROM [AFO]
) T order by "ATC_1" ASC
) u
内部T
查询是我输入的数据集定义查询,基本上是我桌面上的select * from [AFO]
,外包裹是由知识制作的(我从未写过)
并非select count (*) from T
执行了相同的计算,但避免了一个高价订单?
编辑: 后端(数据源)是MSSQL,缓存服务器是MYSQL所以频繁查询是在mysql上
答案 0 :(得分:0)
此查询相当于:
SELECT COUNT(*)
FROM [AFO];
我能想到构建这样一个查询的唯一原因是" 100"可以设置为另一个值。我不确定SQL Server的优化器是否足以消除子查询中的ORDER BY
。