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

Как мога да поръчам по персонализирана функция в SQLAlchemy

Можете да приложите вашето търсене с CASE израз в SQL:

from sqlalchemy import case

_event_type_lookup = dict(received=0, open=1, done=2)

class Trades(Base):
    ...
    @hybrid_property
    def event_type_to_integer(self):
        return _event_type_lookup[self.event_type]

    @event_type_to_integer.expression
    def event_type_to_integer(cls):
        return case(_event_type_lookup, value=cls.event_type)

Това използва стойност стенограма на case() конструкция, за да създаде израз, който сравнява дадения израз на колона с ключовете, предадени в речника, давайки картографираните стойности като резултат.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Проблеми с rails сървъра

  2. Грешка при създаване на PostgreSQL база данни с помощта на python, sqlalchemy и psycopg2

  3. Лесен начин за нулиране на Django PostgreSQL база данни?

  4. PostgreSQL ОПИСАТЕ ТАБЛИЦА

  5. Най-добрият начин за съхраняване на време над 24:00:00 в postgresql?