Languages
[Edit]
EN

Node.js - PostgreSQL Select last row

0 points
Created by:
Dirask Admin - MR
1340

In this article, we would like to show you how to select the last row in the Postgres database from Node.js level.

Node.js - PostgreSQL Select last row
Data used in the example - HeidiSQL

Note: at the end of this article you can find database preparation SQL queries.

const { Client } = require('pg');

const client = new Client({
    host: '127.0.0.1',
    user: 'my_username',
    database: 'my_database',
    password: 'my_password',
    port: 5432,
});

const fetchLastRows = async (count) => {
	const query = `
            SELECT * FROM "users"
            ORDER BY "id" DESC
            LIMIT $1;
    `;
    await client.connect();   // creates connection
    try {
        const { rows } =  await client.query(query, [count]);  // sends query
        return rows;
    } finally {
        await client.end();   // closes connection
    }
};

fetchLastRows(1)  // get only 1 row from the end of the table
    .then(result => console.table(result))
    .catch(error => console.error(error.stack));

Result: 

┌─────────┬────┬───────┬─────────────────┬───────────┐
│ (index) │ id │ name  │      email      │  country  │
├─────────┼────┼───────┼─────────────────┼───────────┤
│    0    │ 7  │ 'Nam' │ 'nam@email.com' │ 'Vietnam' │
└─────────┴────┴───────┴─────────────────┴───────────┘

Database preparation

create_tables.sql file:

CREATE TABLE "users" (
	"id" SERIAL,
	"name" VARCHAR(100) NOT NULL,
	"email" VARCHAR(100) NOT NULL,
	"country" VARCHAR(15) NOT NULL,
	PRIMARY KEY ("id")
);

insert_data.sql file:

INSERT INTO "users"
("name", "email", "country")
VALUES
('Tom', 'tom@email.com', 'Poland'),
('Chris', 'chris@email.com', 'Spain'),
('Jack', 'jack@email.com', 'Spain'),
('Kim', 'kim@email.com', 'Vietnam'),
('Marco', 'marco@email.com', 'Italy'),
('Kate', 'kate@email.com', 'Spain'),
('Nam', 'nam@email.com', 'Vietnam');

Native SQL query (used in the above example):

SELECT * FROM "users"
ORDER BY "id" DESC
LIMIT 1;
Native Advertising
🚀
Get your tech brand or product in front of software developers.
For more information Contact us
Dirask - we help you to
solve coding problems.
Ask question.

❤️💻 🙂

Join