是否可以在不使用PonyORM查询的情况下检查元素是否存在而不会区分大小写?
我有一个定义如下的表:
Client(id: int PRIMARY KEY, name: Text, location: Text)
因此,它将类似于:
Client.exists(name='stackoverflow'.upper())
这不起作用,因为它仅将比较的一部分转换为大小写,而不转换数据库中的内容。
我的意思是等同于查询:
SELECT * From Client WHERE UPPER(Client.name) = UPPER('stackoverflow')
但是将ponyORM中已经存在的功能与exist()方法一起使用。
答案 0 :(得分:0)
我找到了使用Lambda函数的解决方案。
写这个:
Client.exists(lambda: str(c.name).upper() == 'stackoverflow'.upper())