TIL/개인공부
[ORM] Python SQLAlchemy 내용 정리하기 (WIP)
재융
2024. 11. 4. 01:23
반응형
ORM
Object Relational Mapper(ORM) 데이터베이스에서의 테이블의 데이터와 코드상의 객체와 연결을 지어주는 맵퍼
filter_by & where & filter 차이
filter: 복잡한 조건을 추가할 때 사용
from sqlalchemy import and_
query = session.query(User).filter(User.name == 'Alice', User.age > 20)
# 또는
query = session.query(User).filter(and_(User.name == 'Alice', User.age > 20))
filter_by: 키워드 인수로 조건을 지정, 하지만 복잡한 조건에는 적합하지않음
query = session.query(User).filter_by(name='Alice', age=20)
where: SQLAlchemy 1.4버전에서 추가됐고 filter와 동일한 기능을 하지만, select()문법과 잘맞음.
from sqlalchemy import select
stmt = select(User).where(User.name == 'Alice')
반응형