Mysql
 sql >> база данни >  >> RDS >> Mysql

SQLAlchemy принуди in_() да използва литерали

В (по време на писане на тази предстояща) версия 1.4 можете да използвате разширяващ се bindparam с literal_execute=True само за ефекта, който търсите:

In [2]: class Foo(Model):
   ...:     id = Column(Integer, primary_key=True)
   ...:     data = Column(Integer)

In [3]: metadata.create_all()

In [4]: session.query(Foo).\
   ...:     filter(Foo.data.in_(
   ...:         bindparam('xs', range(10), expanding=True, literal_execute=True))).\
   ...:     all()
2019-09-07 20:35:04,560 INFO sqlalchemy.engine.base.Engine BEGIN (implicit)
2019-09-07 20:35:04,561 INFO sqlalchemy.engine.base.Engine SELECT foo.id AS foo_id, foo.data AS foo_data 
FROM foo 
WHERE foo.data IN (0, 1, 2, 3, 4, 5, 6, 7, 8, 9)
2019-09-07 20:35:04,561 INFO sqlalchemy.engine.base.Engine ()
Out[4]: []



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да архивирате MySQL бази данни с помощта на cron задания

  2. Вземете процент на появата на определена стойност в mysql

  3. json поле на mysql where клауза

  4. Отстраняване на неизправности:MySQL/MariaDB грешка #1044 и #1045 Достъпът е отказан за потребителя

  5. Бавна MySQL заявка при изявление за актуализиране