EF Core MySQL - операторы LINQ создали неэффективный запрос - PullRequest
0 голосов
/ 08 мая 2019

У меня есть объект инвентаризации, который имеет тип IQueryable.Когда я использую linq для запуска инвентаризации.Count (), создается следующий SQL-запрос (я использовал регистратор структуры сущностей, чтобы увидеть фактический производимый запрос):

SELECT Count(*)
FROM Inventory

У меня есть другой оператор linq, который принимает тот же самыйОбъект инвентаризации и запускает на нем следующую команду:

inventory.Select(x => x.Id).Distinct().Count();

И этот производит SQL-запрос:

SELECT Id, name, quantity, cost
FROM Inventory

Он не использует синтаксис подсчета SQL.Зачем?Если первый оператор linq создает оптимизированный SQL-запрос, почему этот создает неэффективный?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...