# queryset

[230202 - TIL] Django - QuerySets are lazy / When QuerySets are evaluated
Django QuerySet API reference를 보던 중 QuerySets are lazy / When QuerySets are evaluated에 대한 부분을 보고 직접 구현해봄으로써 확인해보고자 한다.\*\*https://docs.djangoproj

Django의 QuerySet
QuerySet 특징데이터베이스와 소통하지 않고 데이터를 몽땅 꺼내옴QuerySet은 실제로 데이터를 가져오도록 요청받았을 때만 데이터베이스와 소통함filter들을 동시에 쓸 수 있게 해줌 (서로 다른 QuerySet 연결 가능)

Django Docs | select_for_update()
이 글은 장고 Docs를 참고해 작성했습니다.앱을 사용하다 보면 여러 사람이 동시에 같은 row를 조회하게 되는 경우가 생길 수 있다. 가령 고객에게 DB에 있는 상품권을 지급하는 경우 여러 유저가 동시에 상품권을 조회하게 된다면 같은 상품권을 조회하게 될 수 있다는

[Django] 장고 Models를 활용한 데이터베이스 처리#6_Queryset의 정렬 및 범위 조건
1) ... > sql을 요청해서 확인했을 때 LIMIT(stop-start), OFFSET(start) 두 가지만 있는 것을 확인할 수 있다. step 값을 넣지 않으면 Out[8]에서 QuerySet을 반환하고 넣으면 Out[9]에서 리스트 타입을 반환함을 알 수 있는데, 따라서 step 값은 sql이 아닌 장고의 쿼리셋이 처리하면서 새로운 리스트를...

[Django] 장고 Models를 활용한 데이터베이스 처리#5_Queryset을 통한 간단 검색 구현
1) > urls.py 소스에 해당 코딩을 구현했다. 네이버에 처음 들어갔을 때 검색창이 뜨는 것처럼, "아무것도 없는 ''주소로 접근한다면 views.py 소스의 post_list 함수와 연결해줄게"로 이해하면 좋다. 2) > 호출 당시의 요청의 모든 내역인 request를 첫 번째 인자로 갖는 함수 post_list를 작성하겠다. request는 ...

[Django] 장고 Models를 활용한 데이터베이스 처리#4_모델을 통한 조회 (기초)
1) > 쿼리셋의 특징은 게으르다는 것이다. all() 객체를 만들자마자 db에 select 쿼리를 하는 것이 아니다.(쿼리셋을 만드는 동안에는 db에 접근하지 않는다. 데이터를 쿼리할 준비만 하고있다가 실제로 데이터가 필요한 시점인 세 번째 줄 qs 시점에 쿼리한다. 2) > .get은 하나의 객체를 얻는다. >> lt: less than, lte...

Django QuerySet METHOD
Django ORM에서 제공하는 데이터 타입데이터베이스에서 전달받은 객체 목록구조는 파이썬의 리스트(List)와 비슷한 형태이지만,파이썬의 기본 자료구조가 아니기 때문에 자료형 변환을 해줘야함.No database acitivity actually occurs unti
장고 ORM 쿼리셋
장고의 ORM(모델)을 SQL로 바꿔주는것장고 쉘로 들어가서 입력해보면 된다.쿼리셋을 쓰다보면 입력이 길어지는데 파이썬 기본 쉘은 자동입력 등의 기능이 없어서사용하기 불편하므로 ipython 등을 설치해서 쓰는게 좋다base 또는 가상환경에서 pip install ip

Django queryset 정참조, 역참조, related_names, select_related, prefetch_related
장고 ORM에서 query의 결과값으로 queryset 의 instance로 준다. 여기서 살펴봐야 할 "정참조, 역참조"를 기반으로 select_related, prefetch_related, related_names 에 대해서 자세하게 살펴보자.

PyconKorea | Django ORM QuerySet 구조와 원리 그리고 최적화 전략 강의 정리
김성렬 님의 "Django ORM QuerySet 구조와 원리 그리고 최적화 전략강의"를 듣고 정리한 글입니다.정말 필요한 시점에 SQL을 호출한다.(예시1)쿼리셋을 선언하면 선언 시점에는 쿼리셋에 지나지 않음리스트 모델이 넘어오는 것이 아니다.실제로 유저 리스트가 되

Django QuerySet 활용(select_related & prefetch_related)
select_related, prefetch_related 쿼리셋은 바로 SQL의 join 기능으로 활용할 수 있는 쿼리셋이다.참고로 먼저 간단히 설명해보자면,select_related 는 정참조 관계일때, 사용할수 있으며prefetch_related 는 역참조 관계일

[Django] 알고 사용하자! Queryset 카운트 내부 동작
어느 서비스에서든 절대 빠질 수 없는 로직 중 하나는 바로 집계 로직입니다.총 포스트 갯수, 총 유저 수, 활동 중인 유저 수 등... 어떤 간단한 서비스더라도, 특정 조건에 부합하는 데이터가 총 몇 개인지 집계하는 일은 항상 필요하죠.Django 에서는 강력한 내부

TIL 47. QuerySet API와 View
django QuerySet에 대해 공부한 점들을 기록합니다. 이 글은 engineertodeveloper과 django공식문서을 토대로 합니다. Once you’ve created your data models, Django automatically gives you

Django QuerySet API
📍 Model Method 종류…📍 QuesrySet을 반환하는 경우📍 그렇지 않은 경우🔥 Methods That Don’t Return QuerySetsCreate()Table에 데이터를 추가 해주는 method. 생성된 인스턴스를 반환get() 지정된 조회
ORM 01
장고 QuerySet 공식 레퍼런스모든 유저 정보 가져오기결과가 하나 이상 존재하는지 확인하기 \- 더 자주 쓰인다. 모든 데이터를 가져올필요X데이터 개수 조회하기사용자지정 Column 추가하기 \- 컬럼명을 표시하지않으면 기본값 \_\_표현식
TIL DAY 37 || Python Django select_related, prefetch_related
How to use select_related, prefetch _related with query logging ? Let's take a look to see how many queries have decreased.