Como Criar Query Manual Com NodeJS Postgres

Enquanto desenvolvemos aplicações com NodeJS e Postgres, é comum usarmos ORM para facilitar o nosso desenvolvimento, como por exemplo, Sequelize.
O Sequelize nos fornece uma forma rápida e fácil de consultarmos dados em nosso banco, sem muitas preocupações!
Mas como fazemos, quando a consulta que o Sequelize está fazendo é muito complexa ou é inviável fazer por ele?

Podemos fazer nossas próprias consultas! Para isso usaremos um cara chamado Node-Postgres

Node-postgres nada mais é que uma API que nos permite conectar diretamente no banco de dados e executar nossas queries como se estivéssemos em nosso SGBD.
Vamos ver como usá-lo?

1
npm install pg

Agora instalado, precisamos nos conectar ao banco de dados:

1
2
3
4
5
6
7
8
9
10
const { Client } = require("pg");

const client = new Client({
user: "dbuser",
host: "database.server.com",
database: "mydb",
password: "secretpassword",
port: 3211,
});
client.connect();

Feito isso, temos uma conexão aberta!
E como fazer uma consulta simples?

1
2
3
4
client
.query("SELECT * from CLIENTS")
.then((res) => console.log(res.rows[0]))
.catch((e) => console.error(e.stack));

Fácil não é mesmo?
Agora é só juntar todo seu conhecimento com banco de dados e mandar bala em suas consultas!