Python подключение к базе данных и выборка таблицы в формате json

В проекте django я подключился к базе данных и написал "select * from table" для отображения результата в формате json, Я использовал for cycle для этого, он работает нормально, но когда есть миллионы или более миллионов строк, get запрос занимает много времени и в конечном итоге он останавливается без результата. Есть ли альтернативный способ выполнить этот код без использования for cycle, так как for cycle занимает очень много времени, если в запросе select много строк. Я выполнил все действия в urls.py в проекте django

urls.py

from django.urls import path
from hdbcli import dbapi
from django.http import HttpResponse, JsonResponse
import json

def get_all_users(request):
    conn = dbapi.connect(address="localhost", port="xxx", user="xxxx", password="xxxx")
    cursor = conn.cursor()
    cursor.execute("select bname, name_text, function, department from user_addrs")
    objs = cursor.fetchall() 
    json_data = []
    for obj in objs:
        json_data.append({
            "login" : obj[0], 
            "full_name" : obj[1],
            "function" : obj[2],
            "department" : obj[3]
            })
    return JsonResponse(json_data, safe=False)

urlpatterns = [
    path('test/', get_all_users),
]

в браузере результат выглядит следующим образом enter image description here

в cmd, печатаем следующим образом in cmd, print shows like this

может ли кто-нибудь помочь мне решить эту проблему, мне нужен код, который возвращает json ответ быстрее, даже если есть большое количество строк в select запросе

Спасибо

Вернуться на верх