장고에서 데이터를 다루기 위해서는 쿼리셋을 잘 활용해야 합니다. 장고의 QuerySet API reference
문서를 정리해 보려고 합니다. (계속 업데이트 예정입니다.)
Methods that return new QuerySets
조건에 해당하는 쿼리셋을 불러옵니다. lookup 필드 포맷도 가능하며 or 조건을 적용해야 할 경우 Q객체도 사용 가능합니다.
Entry.objects.filter(id=1)
select ..
where id=1
Entry.objects.filter(id__gt=4)
select ..
where id > 4
조건에 해당하지 않는 쿼리셋을 불러옵니다. lookup 필드 포맷도 가능합니다.
Entry.objects.exclude(id=1)
select ..
where not id=1
annotate()
order_by()
reverse()
distinct()
values()
values_list()
dates()
datetimes()
none()
all()
union()
intersection()
difference()
select_related()
prefetch_related()
extra()
defer()
only()
using()
select_for_update()
raw()
Operators that return new QuerySets
AND (&)
OR (|)
Methods that do not return QuerySets
get()
create()
get_or_create()
update_or_create()
bulk_create()
bulk_update()
count()
in_bulk()
iterator()
With server-side cursors
Without server-side cursors
latest()
earliest()
first()
last()
aggregate()
exists()
update()
delete()
as_manager()
explain()
exact
iexact
contains
icontains
in
gt
gte
lt
lte
startswith
istartswith
endswith
iendswith
range
date
year
iso_year
month
day
week
week_day
quarter
time
hour
minute
second
isnull
regex
iregex
expressions
output_field
filter
**extra
Avg
Count
Max
Min
StdDev
Sum
Variance