Форум сайта python.su
В SQL есть оператор LIKE, который проверяет соответствие значений заданной маске. Например:
SELECT CompanyName, ContactName
FROM Customers
WHERE CompanyName LIKE 'M%'
Офлайн
для выборки по префиксу (prefix%) можно сделать финт ушами:
GqlQuery(“SELECT * FROM Model WHERE prop >= :1 AND prop < :2”, u“prefix”, u“prefix” + u“\ufffd”)
Офлайн
Этот запрос выведет строки, которые начинаются на u“prefix”. А как быть, если префикс находится не вначале строки?
И еще, мне не понятно назначение символа u“\ufffd”?
Офлайн
В GQL по объективным причинам нету аналога LIKE. я знаю решение только для частного случая, которое и привел выше
\ufffd это символ на наибольшим кодом в unicode, поэтому строка (“prefix” + u“\ufffd”) “больше” любой другой сторки начинающейся с “prefix”
Офлайн
Хм, значит будем что-то менять… Спасибо за помощь.
Офлайн