Можно ли получить общее количество строк в SQL Server до разбивки на страницы? - PullRequest
1 голос
/ 03 мая 2019

У меня следующий запрос в SQL Server:

select * from sales

Это возвращает около миллиарда строк, и мне нужно обработать данные. Я хотел бы показать прогресс во время обработки данных, используя что-то вроде следующего:

res=conn.execute('select * from sales s1')
total_rows = ?
processed_rows = 0
step_size = 10000
while True:
    data = res.fetchmany(step_size)
    processed_rows += step_size
    print "Progress: %s / %s" % (processed_rows, total_rows)

Есть ли способ получить общее количество строк в запросе SQL, не выполняя другой запрос (или не выполняя такую ​​операцию, как len(res.fetchall()), которая добавит много накладных расходов к приведенному выше)?

Примечание: Меня не интересует разбиение на страницы здесь (что и должно быть сделано). Это больше вопрос, чтобы узнать, возможно ли получить ОБЩУЮ СЧЕТЧИК СТРОКИ в запросе в SQL Server ПЕРЕД разбивкой на страницы / обработкой данных.

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