# PostgreSQL to SingleStore Data Type Mapping

The following mappings define how PostgreSQL data types are represented in SingleStore.

For more information about SingleStore data types, refer to [Data Types](https://docs.singlestore.com/cloud/reference/sql-reference/data-types.md).

## String Types

| **PostgreSQL Type** | **SingleStoreType**([more info](https://docs.singlestore.com/cloud/reference/sql-reference/data-types/string-types.md)) |
| ------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| CHAR                | CHAR                                                                                                                    |
| VARCHAR             | VARCHAR                                                                                                                 |
| BPCHAR              | CHAR                                                                                                                    |
| TEXT                | LONGTEXT                                                                                                                |
| UUID                | VARCHAR                                                                                                                 |

## Integer Types

| **PostgreSQL Type** | **SingleStoreType**([more info](https://docs.singlestore.com/cloud/reference/sql-reference/data-types/integer-numbers.md)) |
| ------------------- | -------------------------------------------------------------------------------------------------------------------------- |
| SMALLINT            | SMALLINT                                                                                                                   |
| INTEGER             | INT                                                                                                                        |
| BIGINT              | BIGINT                                                                                                                     |
| SMALLSERIAL         | SMALLINT                                                                                                                   |
| SERIAL              | INT                                                                                                                        |
| BIGSERIAL           | BIGINT                                                                                                                     |
| BOOL / BOOLEAN      | TINYINT                                                                                                                    |

## Floating Point Types

| **PostgreSQL Type** | **SingleStoreType**([more info](https://docs.singlestore.com/cloud/reference/sql-reference/data-types/real-numbers.md)) |
| ------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| REAL                | FLOAT                                                                                                                   |
| FLOAT4              | FLOAT                                                                                                                   |
| FLOAT8              | DOUBLE                                                                                                                  |
| DOUBLE PRECISION    | DOUBLE                                                                                                                  |

## Decimal and Numeric Types

| **PostgreSQL Type** | **SingleStoreType**([more info](https://docs.singlestore.com/cloud/reference/sql-reference/data-types/real-numbers.md)) |
| ------------------- | ----------------------------------------------------------------------------------------------------------------------- |
| DECIMAL             | DECIMAL                                                                                                                 |
| NUMERIC             | DECIMAL (65,30)                                                                                                         |
| MONEY               | DECIMAL                                                                                                                 |

## Binary String Types

| **PostgreSQL Type** | **SingleStoreType**([more info](https://docs.singlestore.com/cloud/reference/sql-reference/data-types/binary-string-types.md)) |
| ------------------- | ------------------------------------------------------------------------------------------------------------------------------ |
| BYTEA               | LONGBLOB                                                                                                                       |

## Date and Time Types

| **PostgreSQL Type** | **SingleStoreType**([more info](https://docs.singlestore.com/cloud/reference/sql-reference/data-types/time-and-date.md)) |
| ------------------- | ------------------------------------------------------------------------------------------------------------------------ |
| DATE                | DATE                                                                                                                     |
| TIME                | TIME(6)                                                                                                                  |
| TIMESTAMP           | DATETIME(6)                                                                                                              |
| TIMESTAMPTZ         | DATETIME(6)                                                                                                              |

## Invalid PostgreSQL `DATETIME` and `TIMESTAMP` Values

Certain invalid `DATETIME` values are automatically converted to valid SingleStore values:

| **PostgreSQL Type** | **SingleStoreType** |
| ------------------- | ------------------- |
| 0000-00-00 00:00:00 | 1000-01-01 00:00:00 |
| 0001-00-00 00:00:00 | 1001-01-01 00:00:00 |
| 0001-01-01 01:01:01 | 1001-01-01 01:01:01 |
| 0025-01-01 00:00:00 | 1025-01-01 00:00:00 |

For `TIMESTAMP`, the following conversion takes place:

| **PostgreSQL Type** | **SingleStoreType** |
| ------------------- | ------------------- |
| 0000-00-00 00:00:00 | 1000-01-01 00:00:00 |

Flow converts these invalid values using the following rules, in order:

1. **Zero dates**

   If the value is `0000-00-00 00:00:00`, convert it to `1000-01-01 00:00:00`.

2. **Years below `1000`**

   If the year is between `0000` and `0999`, add `1000` to the year.

   Examples:

   * Year `0001` becomes `1001`
   * Year `0025` becomes `1025`
   * Year `0999` becomes `1999`

3. **Invalid month or day (`00`)**

   If the month or day is `00`, it is replaced with `01`.

   * If month is `00`, replace it with `01`.
   * If day is `00`, replace it with `01`.

   For example:

   * `0001-00-00` → (Rule 2) → `1001-00-00` → (Rule 3) → `1001-01-01`

These rules ensure that common invalid values can be ingested without pipeline failures while preserving their relative ordering as much as possible.

## JSON Types

| **PostgreSQL Type** | **SingleStoreType**([more info](https://docs.singlestore.com/cloud/reference/sql-reference/data-types/json-type.md)) |
| ------------------- | -------------------------------------------------------------------------------------------------------------------- |
| JSON                | JSON                                                                                                                 |
| JSONB               | JSON                                                                                                                 |

## Additional Notes

* TIME is mapped to TIME(6).
* TIMESTAMP and TIMESTAMPTZ types are mapped to DATETIME(6). 

***

Modified at: April 2, 2026

Source: [/cloud/load-data/load-data-with-singlestore-flow/data-type-mapping-in-singlestore-flow/postgresql-to-singlestore-data-type-mapping/](https://docs.singlestore.com/cloud/load-data/load-data-with-singlestore-flow/data-type-mapping-in-singlestore-flow/postgresql-to-singlestore-data-type-mapping/)

(An index of the documentation is available at /llms.txt)
