在Google App Engine中实现“以...开头”和“以...结尾”查询
我在想有没有人能给我一些建议,关于如何用Python在Datastore模型中实现一个以某个字符串开头或结尾的查询?
用伪代码来说,它大概是这样的……
查询所有实体A,条件是属性P以X开头
或者
查询所有实体B,条件是属性P以X结尾
谢谢,Matt
2 个回答
2
看起来你不能在一般情况下做到这一点,但对于前缀搜索(以某个字母开头的搜索)是可以的:
16
你可以通过使用不等式过滤器来进行一个“以...开头”的查询:
MyModel.all().filter('prop >=', prefix).filter('prop <', prefix + u'\ufffd')
如果想要进行一个“以...结尾”的查询,就需要先把字符串反转过来,然后用和上面一样的方法来处理。