sql >> データベース >  >> RDS >> Mysql

SQLをSQLalchemyに変換する

    最初のクエリには、db.func.countを使用します count式を生成します。他のすべては、docs から明らかなはずです。 。

    status_counts = db.session.query(BarBaz.status, db.func.count(BarBaz.id).label('count_id')
    ).filter(db.not_(db.or_(BarBaz.name == 'Foo', BarBaz.name == 'Bar'))
    ).group_by(BarBaz.status
    ).all()
    

    2番目のクエリには、 subquery() 選択可能なクエリを生成します。

    sub_app = db.session.query(db.func.count(Instance.id).label('app')
    ).filter(db.not_(db.or_(Instance.name == 'erf', Instance.tiername == 'wer')), Instance.type == 'app'
    ).subquery()
    
    sub_adc = db.session.query(db.func.count(Instance.id).label('adc')
    ).filter(db.not_(db.or_(Instance2.name == 'visq', Instance2.name == 'werf')), Instance2.type == 'adc'
    ).subquery()
    
    out = db.session.query(sub_app.c.app, sub_adc.c.adc).all()
    



    1. mysql recursive(tree)親子カテゴリ

    2. MySQLのNOW()、SYSDATE()、およびCURRENT_DATE()の違い

    3. QueryException SQLSTATE[HY000][1045]ユーザー'homestead'@'localhost'のアクセスが拒否されました(パスワードを使用:YES)

    4. MySQL-複数の値とWHEREINを更新します