Django/tip

[Django] lookup

코딩하는 Yang 2022. 10. 21. 12:45

Field lookup

 : SQL의 WHERE에 해당되는 기능으로 filter, get, exclude등 메소드로 얻게되는 queryset에 조건을 건다

 

사용법

ex) model.objects.filter(data__exact = 'temp')

-> 모델에서 data field의 value가 'temp'와 일치하는 것들을 수집한다.

 

lookup 종류

exact : 정확하게 일치하는 데이터 찾기

iexact : 대소문자 구분하지 않고 정확하게 일치하는 데이터 찾기

contains : 포함하는 문자열 찾기 (대소문자 구분 O)

icontains : 포함하는 문자열 찾기 (대소문자 구분 x)

in : list, tuple, string 등 iterable(값을 차례대로 꺼낼 수 있는 객체입니다)가 해당 필드에 포함되는 경우

gt : 관계연산자 > 과 같은 역할 수행 ex) id__gt = 4 -> id > 4

gte : 관계연산자 >= 과 같은 역할 수행

lt : 관계연산자 < 과 같은 역할 수행

lte : 관계연산자 <= 과 같은 역할 수행

startswith : 해당하는 조건으로 시작하는 (접두사)

istartswith : 해당하는 조건으로 시작하는 (대소문자 구분 x)

endswith : 해당하는 조건으로 끝나는 (접미사)

iendswith : 해당하는 고전으로 끝나는 (대소문자 구분 x)

range : 범위에 해당하는 (날짜) 

 

date타입의 필드인 경우

date, year, month, day, week등도 사용할 수 있다.

 

https://docs.djangoproject.com/en/3.0/ref/models/querysets/#id4