Как получить данные из таблицы на основе части значения? - PullRequest
0 голосов
/ 17 мая 2019

Я использую sequelize в качестве ORM для узла и базы данных mysql.Теперь я хочу получить все элементы из таблицы, основываясь на части стоимости.Пример: я ищу гитару, которую она должна вернуть: гитары, гитары Red 6 струн и т. Д.маршрут как localhost / guitar / Guitar Red 6 Strings я получил результат, но если я попытался использовать localhost / guitar / Guitar, я получил {"message": "Success", "data": []}

1 Ответ

1 голос
/ 17 мая 2019

Вы можете использовать ключевое слово LIKE, чтобы сопоставить строку, аналогичную той, которую вы проходите, со следующими ключевыми символами:

  • _ означает любой символ там
  • % означает любые 1 или более символов там

Поэтому вы ищете что-то вроде этого

results = await db.Guitars.findAll({
  where: {
    name: {
      [Op.like]: 'Guitar%'
    }
  }
})

Более того, если вы используете PostgreSQL, вы можете использоватьОператор ILIKE ([Op.ilike]), который совпадает с LIKE, за исключением того, что регистр не учитывается.Смотри: http://docs.sequelizejs.com/manual/querying.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...