Я выполняю поисковую систему пользователя в своей базе данных Cassandra. Для этого я установил Cassandra Lucene Index из Stratio. Я могу для поиска пользователей по имени пользователя, но проблема заключается в следующем:Cassandra Lucene Index boolean синтаксис
Это мой Cassandra пользователей таблицы и индекс Lucene:
CREATE TABLE user (
username text PRIMARY KEY,
email text,
password text,
is_verified boolean,
lucene text
);
CREATE CUSTOM INDEX search_main ON user (lucene) USING 'com.stratio.cassandra.lucene.Index' WITH OPTIONS = {
'refresh_seconds': '3600',
'schema': '{
fields : {
username : {type : "string"},
is_verified : {type : "boolean"}
}
}'
};
Это обычный запрос выполняется для поиска пользователя по Имя пользователя:
SELECT * FROM user WHERE lucene = '{filter: {type : "wildcard", field : "username", value : "*%s*"}}' LIMIT 15;
Мой вопрос:
Как я мог сортировать возвращаемые результаты, чтобы убедиться, что все проверенные пользователи между елями t 15 приводит к запросу? (Предел равен 15).
с этим синтаксисом перечисленных пользователей ** только ** Проверены. То, что я хотел сделать, это получить сначала проверенных пользователей, а затем не проверенных. Можно ли достичь одного запроса? Или мне нужно сделать два запроса? Один для проверки и другой для не проверенных. –
Хотите попасть первым 15 проверенным пользователям, а затем всем, кто не проверял пользователей? Или просто получить не более 15 результатов, удовлетворяющих шаблону шаблона, отсортированного по is_verified? Какова цель предложения LIMIT? –
Возможно, вам нужно добавить предложение сортировки, чтобы упорядочить строки с помощью «is_verified»: –