orm의 selectreleated 및 prefetchreleated 소개

776 단어 djangoorm
select_related: 조회는 연표를 처음 sql문장을 쓸 때 연표를 자발적으로 작성하여 조회할 때 여러 번 조회하지 않아도 된다.여기 시계를 몇 개 쓰면 시계와 연결됩니다. 만약 뒤에 selectrelated ('ut', 'gt') 는 두 테이블을 연결합니다.
q=models.Uinfo.objects.all().select_related('ut')
# select * from uinfo inner join  utype on 

하지만 시계 조작을 할 때는 성능이 떨어진다.만약 회사의 방문량이 많으면feigionkey를 하지 않을 것이다.많은 회사들이 하드디스크 저장소가 아니라 속도에 관심을 갖는다.
feiginkey:1, 제약, 2 하드디스크 공간 절약
prefetch_related
prefetch_related,    ,     
q = modele.uinfo.objects.all().prefetch_related()
# 2 sql  ,        ,   :select * from uino;    Django              (       )ut_id = [2,4]    :select * from utype where id in [2,4]
  :
    for row in q:
        print(row.id,row.ut.title)#     title              。          

좋은 웹페이지 즐겨찾기