У меня та же проблема, но я нашел что-то на страницах движка приложений Google:
Совет: фильтры запросов не имеют явного способа сопоставления только части строкового значения, но вы можете подделать совпадение префикса, используя фильтры неравенства:
db.GqlQuery("SELECT * FROM MyModel WHERE prop >= :1 AND prop < :2",
"abc",
u"abc" + u"\ufffd")
Это соответствует каждой сущности MyModel со строковым свойством свойства, которое начинается с символов abc. Строка Юникода u "\ ufffd" представляет собой максимально возможный символ Юникода. Когда значения свойств сортируются в индексе, значения, попадающие в этот диапазон, - это все значения, начинающиеся с данного префикса.
http://code.google.com/appengine/docs/python/datastore/queriesandindexes.html
может быть, это поможет;)