Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Chuyển đổi SQL sang SQL alchemy

Đối với truy vấn đầu tiên, hãy sử dụng db.func.count để tạo ra biểu thức đếm. Mọi thứ khác phải rõ ràng từ tài liệu .

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()

Đối với truy vấn thứ hai, hãy sử dụng subquery() để tạo ra các truy vấn có thể chọn.

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. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Làm cách nào để loại bỏ những nhận xét này trong MySQL dump?

  2. Giới thiệu về các kiểu dữ liệu MySQL

  3. MySQL KHÔNG TRONG mảng tên?

  4. Khi nào chọn Oracle thay vì MySQL?

  5. MySQL đưa ra lỗi ECONNRESET đọc sau thời gian nhàn rỗi trên máy chủ node.js