.label (...) 함수가 SqlAlchemy에서 어떻게 작동하는지 혼란 스럽습니다. 나는이 같은 쿼리 뭔가있어 :이 쿼리가 실행되면, 나는 결과 쿼리에 구속으로 order.coupon_code를 참조sqlalchemy 레이블
을data = session.query(Coupon, func.isnull(Order.coupon_code).label("redeemed")) \
.outerjoin((Order, Order.coupon_code == Coupon.coupon_code)) \
.all()
하지만, 데이터의 반환 행에 나는 두 가지를 얻을 쿠폰 구조 및 '0'또는 '1'). 다음과 같은 :
[(Coupon:
coupon_id = 1234
etc
, 0),
... ]
내가이 '0'또는 '1'로 선정됐다가 '0'또는 '1'의 값으로 '구속'되고 싶습니다. 다음과 같은 것 :
[(Coupon:
coupon_id = 1234
etc
,
redeemed = 0),
... ]
나는 어떤 라벨이 나를 위해 무엇을하는지 이해하지 못한다. 누군가 내가 생각하고있는 방식으로 데이터를 얻을 수있는 방법에 대한 힌트 나 방향이 있다면, 크게 감사하겠습니다!
감사합니다, 더그
팁을 제공해 주셔서 감사합니다. 그러나이 경우에는 확실하지는 않지만 column_property는 매우 유용합니다. 이 session.query (Coupon, Order)와 같은 쿼리의 두 객체에서 모든 것을 가져올 수 있지만 Order에서 Order.coupon_code라는 필드 하나만 가져와야합니다. –