> 데이터 베이스 > MySQL 튜토리얼 > SQLAlchemy 날짜 필드를 사용하여 연령대별로 사용자를 효율적으로 필터링하는 방법은 무엇입니까?

SQLAlchemy 날짜 필드를 사용하여 연령대별로 사용자를 효율적으로 필터링하는 방법은 무엇입니까?

Mary-Kate Olsen
풀어 주다: 2024-12-24 15:28:15
원래의
373명이 탐색했습니다.

How to Efficiently Filter Users by Age Range Using SQLAlchemy Date Fields?

SQL 데이터 필드 필터링

SQL 데이터베이스의 데이터로 작업할 때 대상 정보를 검색하기 위해 특정 필드를 필터링해야 하는 경우가 많습니다. 이 경우 SQLAlchemy를 사용하여 날짜를 나타내는 필드를 필터링하는 방법을 살펴보겠습니다.

다음 모델이 주어진 경우:

class User(Base):
    ...
    birthday = Column(Date, index=True)   #in database it's like '1987-01-17'
    ...
로그인 후 복사

우리의 목표는 생일, 특히 생일을 기준으로 사용자를 필터링하는 것입니다. 특정 연령대(예: 18~30세).

처음에는 필터링을 구현하려고 하셨습니다. using:

query = DBSession.query(User).filter(
    and_(User.birthday >= '1988-01-17', User.birthday <= '1985-01-17')
)
로그인 후 복사

그러나 이 쿼리는 오타로 인해 올바르지 않습니다. 적절한 필터는 다음과 같습니다.

qry = DBSession.query(User).filter(
    and_(User.birthday <= '1988-01-17', User.birthday >= '1985-01-17')
)
로그인 후 복사

날짜 범위를 필터링하는 또 다른 대안은 between 기능입니다.

qry = DBSession.query(User).filter(User.birthday.between('1985-01-17', '1988-01-17'))
로그인 후 복사

이러한 필터링된 쿼리를 활용하면 해당 사용자의 기록을 기반으로 특정 사용자 기록을 검색할 수 있습니다. 생년월일을 입력하여 선택한 데이터에 대한 추가 작업이나 분석을 수행할 수 있습니다.

위 내용은 SQLAlchemy 날짜 필드를 사용하여 연령대별로 사용자를 효율적으로 필터링하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿