docs-v2/content/flux/v0/query-data/sql/postgresql.md

2.3 KiB

title list_title description menu weight related list_code_example
Query PostgreSQL PostgreSQL Use [`sql.from()`](/flux/v0/stdlib/sql/from/) with the `postgres` driver to query PostgreSQL.
flux_v0
name parent
PostgreSQL SQL databases
101
/flux/v0/stdlib/sql/from/
```js import "sql" sql.from( driverName: "postgres", dataSourceName: "postgresql://username:password@localhost:5432", query: "SELECT * FROM example_table", ) ```

To query PostgreSQL with Flux:

  1. Import the sql package.

  2. Use sql.from() and provide the following parameters:

    • driverName: postgres
    • dataSourceName: See data source name
    • query: PSQL query to execute
import "sql"

sql.from(
    driverName: "postgres",
    dataSourceName: "postgresql://username:password@localhost:5432",
    query: "SELECT * FROM example_table",
)

PostgreSQL data source name

The postgres driver uses the following DSN syntax (also known as a connection string):

postgres://username:password@localhost:5432/dbname?param=value

PostgreSQL to Flux data type conversion

sql.from() converts PostgreSQL data types to Flux data types.

PostgreSQL data type Flux data type
INT, BIGINT, SMALLINT, TINYINT, INT2, INT4, INT8, SERIAL2, SERIAL4, SERIAL8 int
FLOAT4, FLOAT8 float
DATE, TIME, TIMESTAMP time
BOOL bool
TEXT string

{{% caption %}} All other PostgreSQL data types are converted to strings. {{% /caption %}}