zoukankan      html  css  js  c++  java
  • sqlalchemy模块

    多表联合查询

    #按用户名摸糊查询
    trans_details.query.join(Uses).filter(Users.username.like('%xx%'))
    #select xxx from trans_details inner join trans_details on users.id=trans_details.user_id where users.username like '%xx%'
    
    #左外联接(left join)
    trans_details.query.outerjoin(Uses).filter(Users.username.like('%xx%'))
    #select xxx from trans_details left outer join trans_details on users.id=trans_details.user_id where users.username like '%xx%'
    
    #以上是已经设置好外键,它自动找到关联的字段.也可以自己指定:
    trans_details.query.join(Uses,trans_details.user_id==Users.id).filter(Users.username.like('%xx%'))
    #select xxx from trans_details inner join trans_details on users.id=trans_details.user_id where users.username like '%xx%'
    
    #另外一个更复杂的例子:
    q=db.session.query(Credit_bills_details.no,Credit_bills_details.amount,Cards.no).outerjoin(Card_trans_details,
    Credit_bills_details.no==Card_trans_details.trans_no).join(Cards,Card_trans_details.to_card_id==Cards.id)
    .filter(Credit_bills_details.credit_bill_id==3)
    
    
    #SELECT credit_bills_details.no AS credit_bills_details_no, credit_bills_details.amount AS credit_bills_details_amount, cards.no AS cards_no
    # FROM credit_bills_details LEFT OUTER JOIN card_trans_details ON credit_bills_details.no = card_trans_details.trans_no INNER JOIN cards
    # ON card_trans_details.to_card_id = cards.id  WHERE credit_bills_details.credit_bill_id = %s
    

      

  • 相关阅读:
    java学生成绩管理系统
    7.19至7.25第八周学习情况
    8.12至8.18第七周学习情况
    8.5至8.11第六周学习情况
    7.29至8.4第五周学习情况
    《大道至简》读后感
    7.22至7.28第四周学习情况
    7.15至7.21第三周学习情况
    LeetCode 第三题:Longest Substring Without Repeating Characters
    哈希表(散列表)
  • 原文地址:https://www.cnblogs.com/jabbok/p/14296993.html
Copyright © 2011-2022 走看看