- Django에서 장고 ORM을 이용하여 DB를 읽을 때, 기본적으로 필요한 작업이 오름차순(ascending)/내림차순(descending)으로 특정 field를 가져오는 것입니다.
문법은 매우 간단하다.
Reserved.objects.filter(client=client_id).order_by('-check_in')
Reserved.objects.filter(client=client_id).order_by('-check_in')
즉,
ORM을 이용하여 DB를 가져올 때 어떻게 하면 될까요?
A라는 모델이 있다고 가정합시다. A의 모든 데이터를 긁어 오려면 다음과 같이 입력하면 됩니다.
A.objects.all()
그 다음에 order_by()를 사용하면 됩니다. 이 때 인자로 들어갈 문자열은 field의 이름입니다. A 라는 모델에 point라는 field가 있다고 합시다. 그러면 다음과 같이 읽어올 수 있습니다.
A.objects.all().order_by('point')
이렇게 읽어오면 오름차순으로 읽어오게 됩니다. 기본값은 오름차순 입니다.
A.objects.all().order_by('-point')
이렇게 읽어오면 내림차순으로 읽어오게 됩니다.
정리하면 order_by('filed 이름)으로 DB 조회 시 오름차순/내림차순을 결정하게 되고 이 때, filed이름 앞에 - 를 붙이면 내림차순으로 읽어오게 됩니다.
'Programming > Python' 카테고리의 다른 글
[Django] type 'PosixPath' is not iterable 에러 (0) | 2022.08.13 |
---|---|
[Django] 다중 필터 적용 (1) | 2021.10.29 |
[python] String Null 값 조건문 (0) | 2021.06.02 |
[Python] Python & Django 현재시간및 특정기준 날짜 구하기 (0) | 2021.04.26 |
[Django] model Foreign key Field on_delete 종류 (0) | 2020.09.12 |