CSVRead
Signatures
CSVRead(VARCHAR path);
CSVRead(VARCHAR path, VARCHAR columnNameHeader, VARCHAR stringDecode);
Description
This function is a part of H2.
Please first consult its documentation on the H2 website.
Reads a CSV file.
All columns are of type VARCHAR.
Optional variable columnNameHeader is a list of column names
separated by the field separator. If NULL, the first line of the
file is interpreted as the column names.
Optional variable stringDecode is a space-separated string for setting CSV options. If NULL, its default value is used:
charset=UTF-8 fieldDelimiter=" fieldSeparator=, lineSeparator=\n writeColumnHeader=true
Examples
Separated file
CREATE TABLE AREA AS
SELECT * FROM CSVRead('/home/user/area.csv') LIMIT 2;
Answer:
THE_GEOM |
ID |
|---|---|
POLYGON((-10 109, 90 9, -10 9, -10 109)) |
1 |
POLYGON((90 109, 190 9, 90 9, 90 109)) |
2 |
Separated file containing the column names on the first line
CREATE TABLE AREA AS
SELECT * FROM CSVRead('/home/user/area.csv',
NULL,
'fieldSeparator=;') LIMIT 2;
Answer:
THE_GEOM |
ID |
|---|---|
POLYGON((-10 109, 90 9, -10 9, -10 109)) |
1 |
POLYGON((90 109, 190 9, 90 9, 90 109)) |
2 |
Separated file with no column names on the first line
CREATE TABLE AREA AS
SELECT * FROM CSVRead('/home/user/area.csv',
'COLUMN1; COLUMN2',
'fieldSeparator=;') LIMIT 2;
Answer:
COLUMN1 |
COLUMN2 |
|---|---|
POLYGON((-10 109, 90 9, -10 9, -10 109)) |
1 |
POLYGON((90 109, 190 9, 90 9, 90 109)) |
2 |
Import a csv file (here centroid.csv) and create a geometric table using coordinates columns (here coord_x and coord_y)
-- centroid.csv
| id | coord_x | coord_y |
|----|---------|---------|
| 1 | 2 | 3 |
| 2 | 4 | 5 |
| 3 | 6 | 7 |
CREATE TABLE POINTS(ID INT PRIMARY KEY,
THE_GEOM GEOMETRY) AS
SELECT ST_MakePoint(coord_x, coord_y) THE_GEOM, id
FROM CSVREAD('/home/user/centroid.csv');
SELECT * FROM POINTS;
Answer:
ID |
THE_GEOM |
|---|---|
1 |
POINT(2 3) |
2 |
POINT(4 5) |
3 |
POINT(6 7) |