У меня есть таблица, в которой один из столбцов содержит список. Я хочу знать, можно ли выбрать все строки, в которых список содержит определенный элемент.Google App Engine: IN фильтр и позиция аргумента
Более конкретно, у меня есть столбец guests
, содержащий список строк, и я хочу знать, является ли конкретная строка guest
частью этого списка. Я хотел бы написать такой запрос:
q = TableName.gql('WHERE :g IN guests', g=guest)
Кажется, однако, что я не могу поместить переменные в этом положении. Например, этот запрос (где OwnerId является строка, а не список строк) также запрещено:
q = TableName.gql('WHERE :g = ownerid', g=guest)
Кажется, я должен написать это так:
q = TableName.gql('WHERE ownerid = :g', g=guest)
Таким образом, у меня есть следующие вопросы:
- Как я могу построить запрос, который получает строки, в которых ячейка списка содержит определенный член?
- Аргументы для запросов GQL ограничены правой частью операторов? Что такое ограничение?
Я использую Google App Engine с Python 2.7. Благодаря!