Невозможно выполнить аналогичные запросы с помощью sugar db

#android #sugarorm

#Android #sugarorm

Вопрос:

Я использую следующий код для извлечения данных из sqlite с использованием Sugar Db

   String query = "SELECT * FROM trending where  like ( '%' ||"   existence   "|| '%' , category)";
    List<Trending> trendings = Trending.findWithQuery(Trending.class, query);
  

Но это приводит к следующей ошибке,

  no such column: Existence (code 1): , while compiling: SELECT * FROM trending where  like ( '%' ||Existence|| '%' , category)
  

Как я могу выполнять ПОДОБНЫЕ запросы с помощью Sugar Db

Комментарии:

1. Ваша проблема больше связана с SQL, чем с Sugar; это не то, как создать строку запроса, используя LIKE.

Ответ №1:

Ничего общего с sugar DB. Вы создаете плохой SQL. Запрос должен быть

 ... WHERE foo LIKE '%Existence%'
  

Вам не хватает имени foo поля, и поскольку вы создаете текстовую строку для вставки фактического значения запроса, вам ТАКЖЕ не нужно иметь конкатенацию SQL.

Попробуйте:

 query = "SELECT * FROM trending where category like '%"   existence   "%'"
  

Комментарии:

1. категория — это имя поля

2. Я хочу получить список всех строк, где значение категории равно существованию