是否存在与SQLAlchemy无关的数据库查询过滤“无”/“NaN”?

时间:2011-03-23 06:08:26

标签: python sqlite postgresql sqlalchemy

以下代码是特定于数据库的:

import sqlalchemy
# ...
ergebnis = session.query(
    my_object.attr1).filter(sa.and_(
        my_object.attr2 != 'NaN')).all() # PostgreSQL
        """
        my_object.attr2 != None)).all() # sQLite
        """

使用PostgreSQL,它是“'NaN'”,SQLite为“None”(没有单引号)。是否有一种SQLAlchemy方式来实现这个后端独立?

1 个答案:

答案 0 :(得分:1)

如果要与'NaN'(“非数字”) float 值进行比较,请执行显式转换为float:float('NaN')。在这种情况下,SQLAlchemy 进行相同的转换。