mirror of
				https://github.com/cldellow/sqlite-parquet-vtable.git
				synced 2025-11-04 02:39:56 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			53 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			53 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
#!/bin/bash
 | 
						|
 | 
						|
set -euo pipefail
 | 
						|
 | 
						|
export PGUSER=postgres
 | 
						|
 | 
						|
dropdb parquet || true
 | 
						|
createdb parquet
 | 
						|
 | 
						|
here=$(readlink -f "$(dirname "${BASH_SOURCE[0]}")")
 | 
						|
 | 
						|
psql parquet << EOF
 | 
						|
CREATE TABLE no_nulls1(
 | 
						|
  rowid INT2,
 | 
						|
  bool_0 INT2,
 | 
						|
  int8_1 INT2,
 | 
						|
  int16_2 INT2,
 | 
						|
  int32_3 INT4,
 | 
						|
  int64_4 INT8,
 | 
						|
  ts_5 int8,
 | 
						|
  double_6 DOUBLE PRECISION,
 | 
						|
  string_7 TEXT,
 | 
						|
  string_8 TEXT,
 | 
						|
  binary_9 TEXT,
 | 
						|
  binary_10 TEXT
 | 
						|
);
 | 
						|
 | 
						|
CREATE TABLE no_nulls2 (LIKE no_nulls1);
 | 
						|
CREATE TABLE nulls (LIKE no_nulls1);
 | 
						|
 | 
						|
COPY no_nulls1 FROM '$here/no-nulls.csv';
 | 
						|
COPY no_nulls2 FROM '$here/no-nulls.csv';
 | 
						|
COPY nulls FROM '$here/nulls.csv';
 | 
						|
 | 
						|
CREATE OR REPLACE FUNCTION quote(TEXT) RETURNS TEXT AS \$\$
 | 
						|
  BEGIN
 | 
						|
    RETURN \$1;
 | 
						|
  END;
 | 
						|
\$\$ LANGUAGE 'plpgsql' IMMUTABLE;
 | 
						|
 | 
						|
CREATE OR REPLACE FUNCTION datetime(INT8, TEXT) RETURNS TEXT AS \$\$
 | 
						|
  BEGIN
 | 
						|
    RETURN to_timestamp(\$1) AT TIME ZONE 'UTC';
 | 
						|
  END;
 | 
						|
\$\$ LANGUAGE 'plpgsql' IMMUTABLE;
 | 
						|
 | 
						|
CREATE OR REPLACE FUNCTION printf(TEXT, DOUBLE PRECISION) RETURNS TEXT AS \$\$
 | 
						|
  BEGIN
 | 
						|
    RETURN CAST(\$2 AS DECIMAL(10, 4))::TEXT;
 | 
						|
  END;
 | 
						|
\$\$ LANGUAGE 'plpgsql' IMMUTABLE;
 | 
						|
EOF
 |