Знание автоматически сгенерированного запроса понимания

Я использую программное обеспечение для анализа данных, у меня проблемы с производительностью, сейчас я наблюдаю журнал "Аудит набора данных", чтобы увидеть, какие запросы выполняет система. Я нашел этот, который для меня, чушь

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 выполнили тот же расчет, но избегая дорогой заказ?

РЕДАКТИРОВАТЬ: Backend (источник данных) является MSSQL, сервер кэширования является MYSQL, поэтому частые запросы на MySQL

1 ответ

Этот запрос эквивалентен:

SELECT COUNT(*)
FROM [AFO];

Единственная причина, по которой я могу придумать для создания такого запроса, заключается в том, что для "100" может быть установлено другое значение. Я не уверен, что оптимизатор SQL Server достаточно хорош, чтобы устранить ORDER BY в подзапросе.

Другие вопросы по тегам