Как я могу получить счет одного выбора во время выбора в SQL Server

У меня есть большой выбор со многими внутренними соединениями и левым соединением и выберите, чтобы выбрать:

SELECT ( ... ) ORDER BY Price 

Вопрос в том, чтобы подсчитать выбор, должен ли я снова запустить этот выбор?

 SELECT COUNT( ... ) ORDER BY Price 

Есть ли простой способ запустить один раз и получить результат выбора и подсчета выбора?

Вот мой код C # с Entity Framework:

 string strQuery = "...."; IQueryable<ProductDto> list = _entities.Database.SqlQuery<ProductDto>(strQuery).AsQueryable(); 

Вы можете использовать select @@rowcount чтобы получить количество строк, выбранных предыдущим оператором, в качестве второго набора результатов или использовать SET @myOutputVar = @@ROWCOUNT в качестве выходного параметра вашей хранимой процедуры.

Несколько Q / A здесь, в StackOverflow, которые также могут помочь

  • Количество строк в ADO.NET, которые могут быть возвращены SQL Server, выбирают хранимую процедуру
  • Как получить количество строк, используя SqlDataReader в C #

Да, вы можете попробовать select @@rowcount .It Возвращает количество строк, затронутых последним оператором. Если количество строк превышает 2 миллиарда, используйте ROWCOUNT_BIG .

https://msdn.microsoft.com/en-IN/library/ms187316.aspx

  • Граф для столбцов бит в выражении select с группой по
  • ВЫБРАТЬ все строки с номерами
  • Значение T-SQL для выбора
  • Как выбрать последнюю отдельную запись в SQL SERVER
  • Совпадение нескольких строк в SQL Server
  • SQL Select Query
  • Как выбрать все записи, даже если в sql нет данных
  • Значение автоматического увеличения в SQL SELECT при дублировании
  • Выберите звездочку из таблицы, но если значение отрицательно, то получится положительное
  • генерировать число приращений в выражении выбора с использованием SQL-сервера
  • SQL - выбор одного и того же столбца дважды, но с разными условиями
  • Давайте будем гением компьютера.