Nodejs - PSQL -ILIKE поиск - PullRequest
       4

Nodejs - PSQL -ILIKE поиск

0 голосов
/ 12 февраля 2020

Моя проблема в следующем. Я хотел бы искать внутри слова, но я не могу найти решение, как это сделать. Я пытаюсь сделать что-то вроде этого:

("%" + $2 + "%") 

Ошибка обычно синтаксическая ошибка около $ 2 или ошибка определения.

function getFilteredData(req, res, next) {
    var dataid = String(req.params.dataid);
    const pageSize = req.query.pageSize;
    const pageIndex = req.query.pageIndex;
    const offset = pageSize * pageIndex;
    const limit = pageSize;
    const filter = req.query.dataname;
    const commonParams = [country, `${filter}%`];
    db.any(
      'SELECT * FROM data WHERE dataid = $1 AND dataname ILIKE $2  ORDER BY isactive=true desc LIMIT $3 OFFSET $4',
      [...commonParams, limit, offset ]
    )
      .then(function (datas) {
        return db.one('SELECT COUNT(*) FROM data WHERE dataid = $1 AND data name ILIKE $2', commonParams).then(countResult => {
        res.status(200)
          .json({
            status: 'success',
            datas: data,
            totalItemsCount: countResult.count,
            message: 'Retrieved filtered Data'
          });
      })
    })
      .catch(function (err) {
        return next(err);
      });
  }

1 Ответ

0 голосов
/ 12 февраля 2020

Я нашел ответ -> Просто возьми еще один знак процента const commonParams = [страна, %${filter}%];

...