1.2.1 • Published 2 years ago

pg-query-object v1.2.1

Weekly downloads
-
License
MIT
Repository
github
Last release
2 years ago

pg-query-object

npm latest version npm bundle size build semantic-release Coverage Status

Run a raw query sql in postgres with object in params

How to use

type Params {
  name: string
  order: 'ASC' | 'DESC'
  limit: number
}

const params: Params = {
  name: 'max',
  order: 'ASC',
  limit: 10,
}

const sql = `
  select
      *,
      :limit AS itens_per_page
  from
      table
  where
      nome = :name
  order by name :order
  limit :limit
`

const [formattedRawQuery, arrayParams] = toSQL<Params>(sql, params)

/*
Output formattedRawQuery variable:

select
    *,
    $3 AS itens_per_page
from
    table
where
    nome = $1
order by name $2
limit $3

----------------------------------------
Output arrayParams variable:

['max', 'ASC', 10]
*/

Example with pg-query:

import { Client } from "pg";

const client = new Client();
await client.connect();
const res = await client.query(formattedRawQuery, arrayParams);
console.log(res.rows);
await client.end();

Example with typeorm

import { getManager } from "typeorm";

const manager = getManager();
const rawData = await manager.query(formattedRawQuery, arrayParams);

console.log(rawData);
1.2.1

2 years ago

1.2.0

3 years ago

1.1.1

3 years ago

1.1.0

3 years ago

1.1.2

3 years ago

1.0.1

3 years ago

1.0.0

3 years ago