bogdan_uman
@bogdan_uman
шлЫмазл неукЪ-поцЪ

Как передавать параметром поле и направление сортировки?

Здравсвтуйте. А не подскажите как через node-postgres передать параметром поле и направление сортировки.

const query = `
      SELECT
        id,
        updated_at
      FROM mail_providers
      ORDER BY $1 $2
    `;
    this.pg.query(query, ['updated_at', 'DESC']);


Такая конструкция не работает. Спасибо.
  • Вопрос задан
  • 52 просмотра
Решения вопроса 1
Enokin
@Enokin
Full-stack разработчик
const { Pool } = require('pg');
const pool = new Pool();

const allowedSortDirections = ['ASC', 'DESC'];

async function sortByField(field, direction) {
  if (!allowedSortDirections.includes(direction)) {
    throw new Error(`Недопустимое направление сортировки: ${direction}. Допустимыми значениями являются: ${allowedSortDirections.join(', ')}`);
  }

  const result = await pool.query(`SELECT id, updated_at FROM mail_providers ORDER BY $1 ${direction}`, [field]);
  return result.rows;
}

sortByField('updated_at', 'DESC')

Можно так сделать
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы