Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

259
Vistas
Showing the same data on every Page. Nodejs MySql

Showing the same data on every Page. Array have lots of data but it's only showing first ten results in every Page

Query is working fine its giving the all results but I think problem in Sort or maybe in Order By. I have no idea new to MySql

async function getvehicles(username, params) {
    var result = {};

    var mysqlResult;
    db.beginTransaction();
    const users = await db.query('SELECT * FROM users WHERE username = ?', [username]);
    if (users.length === 0) {
        result.success = false;
        result.message = "Invalid User ID";
        result.data = [];
        result.range = '0-0';
        db.commit();
        return result;
    }

    let sortBy = "verified";
    let sortOrder = "DESC";
    if (params.sort) {
        const sortArray = JSON.parse(params.sort);
        sortBy = sortArray[0];
        if (['DESC', 'ASC'].includes(sortArray[1])) {
            sortOrder = sortArray[1];
        }
    }
    const page = params.page ? JSON.parse(params.page) : 1;
    const perPage = params.perPage ? JSON.parse(params.perPage) : 10;

    mysqlResult = await db.query(`SELECT * FROM c_vehicles WHERE imageurl IS NOT NULL OR '' AND proofurl IS NOT NULL OR '' ORDER BY ?? ${sortOrder}, id DESC LIMIT ?,?`, [sortBy, ((page - 1) * perPage), perPage]);
    result.data = mysqlResult;

    const mysqlResultCount = await db.query(`SELECT COUNT(*) AS count FROM c_vehicles WHERE imageurl IS NOT NULL OR '' AND proofurl IS NOT NULL OR ''`);
    if (mysqlResultCount[0].count > 0) {
        const countValue = mysqlResultCount[0].count;
        result.range = `0-${countValue - 1}`;
        result.totalLength = countValue;
    } else {
        result.range = '0-0';
        result.totalLength = 0;
    }

    db.commit();

    result.success = true;
    result.message = "Successfully fetched Vehicles.";
    return result;
}
about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda