Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Menggunakan label dalam klausa memiliki di sqlchemy

Coba salah satu dari dua versi di bawah ini (meskipun tidak yakin yang kedua berfungsi di MySQL):

rstuff = (Foo.max_stuff - db.func.sum(Bar.stuff))
qry = (
    db.session.query(
        Foo.id,
        Foo.name,
        rstuff.label('rstuff')
    )
    .join(Bar)
    .group_by(Foo.id)

    # version-1: probably universal, but repeats the expression
    .having(rstuff >= 3)
    # version-2: might depend on the RMDBS engine
    # .having(db.literal_column('rstuff') >= 3)
)



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. CAST DECIMAL ke INT

  2. Nilai BIGINT UNSIGNED di luar jangkauan

  3. Pertanyaan MySQL tentang penjadwalan

  4. Bagaimana cara mengatur params ORDER BY menggunakan pernyataan PDO yang disiapkan?

  5. ORM mana yang harus saya gunakan untuk Node.js dan MySQL?