์ฅ๊ณ ์ ๋ฉ์๋์ ๋ํด ์ ๋ฆฌํด๋ณด์
ํจ์ | ๋ด์ฉ |
---|---|
all() | ํ ์ด๋ธ ๋ชจ๋ ๋ฐ์ดํฐ ์ ๊ฐ์ ธ์ค๊ธฐ |
filter() | ํน์ ์กฐ๊ฑด์ ๋ถํฉํ๋ ๋ฐ์ดํฐ์ ๊ฐ์ ธ์ค๊ธฐ |
exclude() | ํน์ ์กฐ๊ฑด์ ์ ์ธํ ๋ฐ์ดํฐ์ ๊ฐ์ ธ์ค๊ธฐ |
get() | ํน์ ์กฐ๊ฑด์ ๋ถํฉํ๋ 1๊ฐ์ ๋ฐ์ดํฐ ๊ฐ์ ธ์ค๊ธฐ |
count() | ๊ฐ์ ธ์ฌ ๋ฐ์ดํฐ์ ๊ฐ์ ๊ฐ์ ธ์ค๊ธฐ |
first() | ์ฒซ๋ฒ์งธ ๋ฐ์ดํฐ ๊ฐ์ ธ์ค๊ธฐ |
last() | ๊ฐ์ฅ ๋ง์ง๋ง ๋ฐ์ดํฐ ๊ฐ์ ธ์ค๊ธฐ |
exists() | ๋ฐ์ดํฐ ์ ๋ฌด์ ๋ํ ๊ฒฐ๊ณผ(True, False)๋ฅผ ๊ฐ์ ธ์ค๊ธฐ |
order_by() | ํน์ ํ๋ ์์๋๋ก ์ ๋ ฌ |
์ผ์นํ๋ ์กฐ๊ฑด์ ์ ๋ ฅํ ๋ ์ฌ์ฉ
Boards.objects.filter(title__excact='soohyun')
Boards.objects.filter(title__iexcact='soohyun')
# iexact๋ ๋์๋ฌธ์๋ฅผ ๊ฐ๋ฆฌ์ง ์๊ณ ์ผ์นํ๋ ์กฐ๊ฑด
๋ถ๋ถ ์ผ์น ์กฐ๊ฑด ์ ๋ ฅํ ๋ ์ฌ์ฉ
Boards.objects.filter(title__contains='soohyun')
Boards.objects.filter(title__icontains='soohyun')
# icontains๋ ๋์๋ฌธ์๋ฅผ ๊ฐ๋ฆฌ์ง ์๊ณ ๋ถ๋ถ ์ผ์นํ๋ ์กฐ๊ฑด
์ฌ๋ฌ ์กฐ๊ฑด์ ํฌํจํ ๊ฒฝ์ฐ ์ฌ์ฉ
Boards.objects.filter(title__in=['soohyun','developer'])
gt (greater than) : >
lt (less than) : <
gte (greater than or equal) : >=
lte (less than or equal) : <=
Boards.objects.filter(registered_date__gt=datetime.date(2020.10.04)
Boards.objects.filter(registered_date__lt=datetime.date(2020.10.04)
startswith : ์กฐ๊ฑด์ผ๋ก ์์ํ๋ ๋ฌธ์์ด ๊ฒ์
endswith : ์กฐ๊ฑด์ผ๋ก ๋๋๋ ๋ฌธ์์ด ๊ฒ์
Boards.objects.filter(title__startswith="book")
๋ ๊ฐ ์ด์์ ์ฟผ๋ฆฌ์ ๋ณ์๋ฅผ ํ๋์ ์ฟผ๋ฆฌ์ ๊ฐ์ผ๋ก ํฉ์น๋ค.
data1 = Boards.objects.filter(title__exact="soohyun")
data2 = Boards.objects.filter(title__exact="developer")
data3 = union(data1, data2)
๊ต์งํฉ์ผ๋ก ๋ ๊ฐ ์ด์์ ์ฟผ๋ฆฌ์ ๋ณ์ ์ค ์ค๋ณต๋ ๊ฐ์ ๊ฐ์ง๊ณ ์จ๋ค
data1 = Boards.objects.filter(title__in=["soohyun", "developer"])
data2 = Boards.objects.filter(title__in=["soohyun", "wecode"])
data3 = intersection(data1, data2)
๊ฒฐ๊ณผ๋ title ์ด soohyun
์ธ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ง๊ณ ์จ๋ค.
๊ฐ์ฌํฉ๋๋ค.