Using Postgres with Coco Alemana
Connect to Postgres to work with data directly against your Postgres tables.
About Postgres
Section titled “About Postgres”Postgres is one of the remote sources that Coco Alemana supports natively. You can read data from existing tables, as well as save data to new tables entirely, without leaving the app. All of the actions within Coco Alemana also apply to Postgres tables.
Load a Table from Postgres
Section titled “Load a Table from Postgres”1. Open a new source
Section titled “1. Open a new source”Once your credentials are configured, you’re able to load data from Postgres. To start, you can create a new source via ⌘ N, and select “Postgres”.
2. Select a Table
Section titled “2. Select a Table”See your available databases and select a table you’d like to import. You can also search for a table in your database.
Modifying Postgres Tables
Section titled “Modifying Postgres Tables”You can modify Postgres frames with the same actions as any other frame. The SQL used in Coco Alemana will translate into Postgres SQL on your behalf. This means you can work with a massive table without downloading it.
Exporting Data
Section titled “Exporting Data”You export data to Postgres just like any other frame. You can also export a Postgres frame to a local file. This process will take slightly longer, as it requires downloading everything onto your device.
Compatibility
Section titled “Compatibility”Coco Alemana is generally extremely compatible with Postgres’ types, functions and semantic behavior. However, there are certain differences between Postgres and CocoSQL (DuckDB) which are worth knowing about. Below are the ones most likely to matter.
Known Limitations and Inconsistencies
Section titled “Known Limitations and Inconsistencies”- Dates and Timestamps have different minimum and maximum values. CocoSQL supports a wider range than Postgres can physically represent, so values at the far ends of these ranges cannot round-trip to a Postgres table. This is very unlikely to affect your analyses day-to-day.
- Nested arrays must be rectangular. Postgres requires multidimensional arrays where every row has the same length, while CocoSQL allows ragged lists. Ragged lists cannot be written to a Postgres table.
NaNandInfinityhandling can differ in a small number of aggregates and casts. Postgres and CocoSQL make different choices at these edges.