Django, MSSQL server query and pagination

Вот пример моей таблицы на сервере MSSQL

Employeetable

emp_id  name  status 
EMP001  A     STATUS-A
EMP001  A     STATUS-B
EMP002  B     STATUS-C
EMP001  A     STATUS-D
EMP002  B     STATUS-D
EMP003  C     STATUS-C

Сейчас на лицевой странице моего приложения есть таблица, в которой каждый сотрудник перечислен один раз в таблице, и при раскрытии каждого сотрудника отображается каждый доступный статус. Я пытался получить данные с помощью pyodbc

Например:

EMPID   NAME 
EMP001  A
---STATUS-A  #After expanding the EMP001 row it shows all the status of EMP001
---STATUS-B
---STATUS-D
EMP002  B
EMP003  C  

Итак, как мы можем использовать пагинацию в данном случае, если имеется около 200K записей и около 100K различных сотрудников

Есть два подхода к этому:

1.ленивая загрузка

  1. Используйте параметр arraysize в курсоре, что означает, что вы не будете получать все данные из базы данных, а будете выполнять пакетный вызов, это займет меньше памяти, но больше чтения из БД, что может сделать работу вашего приложения медленнее, с другой стороны, если больше пользователей используют только первую или вторую страницу, это будет более эффективно
  2. .
Вернуться на верх