feat: add bin/add.sh

This commit is contained in:
dancingCycle 2023-12-22 00:28:40 +01:00
parent 57f370029b
commit 9de5f1d7dd
3 changed files with 54 additions and 8 deletions

36
bin/add.sh Normal file
View File

@ -0,0 +1,36 @@
#!/bin/sh
#
echo "Started..."
#Started...
#
# special variable $# is the number of arguments
if [ $# -lt 3 ] ; then
echo 'Call ./<script> <db name> <db user> <db schema>'
exit 1
fi
#
DB_NAME="$1"
echo "DB_NAME: ${DB_NAME}"
DB_USER="$2"
echo "DB_USER: ${DB_USER}"
DB_SCHEMA="$3"
echo "DB_SCHEMA: ${DB_SCHEMA}"
#
psql -h localhost -p 5432 -U $DB_USER -f ./sql/join-gncy-rts.sql -d $DB_NAME -v schema=$DB_SCHEMA
#
psql -h localhost -p 5432 -U $DB_USER -f ./sql/rts-count.sql -d $DB_NAME -v schema=$DB_SCHEMA
#
psql -h localhost -p 5432 -U $DB_USER -f ./sql/join-gncy-rts-trps.sql -d $DB_NAME -v schema=$DB_SCHEMA
#
psql -h localhost -p 5432 -U $DB_USER -f ./sql/trps-count.sql -d $DB_NAME -v schema=$DB_SCHEMA
#
psql -h localhost -p 5432 -U $DB_USER -f ./sql/services.sql -d $DB_NAME -v schema=$DB_SCHEMA
#
psql -h localhost -p 5432 -U $DB_USER -f ./sql/join-gncy-rts-trps-srvcs.sql -d $DB_NAME -v schema=$DB_SCHEMA
#
psql -h localhost -p 5432 -U $DB_USER -f ./sql/trip-updates.sql -d $DB_NAME -v schema=$DB_SCHEMA
#
psql -h localhost -p 5432 -U $DB_USER -f ./sql/join-gncy-rts-trps-srvcs-pdts.sql -d $DB_NAME -v schema=$DB_SCHEMA
#
echo "Done."
#done.

View File

@ -1,14 +1,8 @@
-- colon before variable: for a prepared statement using named placeholders, this will be a parameter name of the form :name
CREATE SCHEMA IF NOT EXISTS :schema;
CREATE SCHEMA IF NOT EXISTS :schema_gtfsr;
SET search_path to :schema, :schema_gtfsr, public;
SET search_path to :schema, public;
---create view
DROP VIEW IF EXISTS :schema.vw_join_gncy_rts_trps_srvcs_pdts CASCADE;
CREATE OR REPLACE VIEW :schema.vw_join_gncy_rts_trps_srvcs_pdts AS
SELECT gncy_rts_trps_srvcs.agency_name, gncy_rts_trps_srvcs.agency_id, gncy_rts_trps_srvcs.route_id, gncy_rts_trps_srvcs.route_short_name, gncy_rts_trps_srvcs.service_id, gncy_rts_trps_srvcs.trip_id, gncy_rts_trps_srvcs.trip_short_name, gncy_rts_trps_srvcs.trip_headsign, gncy_rts_trps_srvcs.dates, pdts.timestamp_pgsql FROM :schema.vw_join_gncy_rts_trps_srvcs AS gncy_rts_trps_srvcs LEFT JOIN :schema_gtfsr.trip_updates AS pdts ON gncy_rts_trps_srvcs.route_id = pdts.trip_route_id AND gncy_rts_trps_srvcs.trip_id = pdts.trip_trip_id ORDER BY gncy_rts_trps_srvcs.agency_name, gncy_rts_trps_srvcs.route_id, gncy_rts_trps_srvcs.trip_id, pdts.timestamp_pgsql;
DROP VIEW IF EXISTS mblthk.vw_join_gncy_rts_trps_srvcs_pdts CASCADE;
CREATE OR REPLACE VIEW mblthk.vw_join_gncy_rts_trps_srvcs_pdts AS
SELECT gncy_rts_trps_srvcs.agency_name, gncy_rts_trps_srvcs.agency_id, gncy_rts_trps_srvcs.route_id, gncy_rts_trps_srvcs.route_short_name, gncy_rts_trps_srvcs.service_id, gncy_rts_trps_srvcs.trip_id, gncy_rts_trps_srvcs.trip_short_name, gncy_rts_trps_srvcs.trip_headsign, gncy_rts_trps_srvcs.dates, pdts.timestamp_pgsql FROM mblthk.vw_join_gncy_rts_trps_srvcs AS gncy_rts_trps_srvcs LEFT JOIN gtfsr.trip_updates AS pdts ON gncy_rts_trps_srvcs.route_id = pdts.trip_route_id AND gncy_rts_trps_srvcs.trip_id = pdts.trip_trip_id ORDER BY gncy_rts_trps_srvcs.agency_name, gncy_rts_trps_srvcs.route_id, gncy_rts_trps_srvcs.trip_id, pdts.timestamp_pgsql;
CREATE OR REPLACE VIEW :schema.vw_join_gncy_rts_trps_srvcs_pdts AS SELECT gncy_rts_trps_srvcs.agency_name, gncy_rts_trps_srvcs.agency_id, gncy_rts_trps_srvcs.route_id, gncy_rts_trps_srvcs.route_short_name, gncy_rts_trps_srvcs.service_id, gncy_rts_trps_srvcs.trip_id, gncy_rts_trps_srvcs.trip_short_name, gncy_rts_trps_srvcs.trip_headsign, gncy_rts_trps_srvcs.dates, pdts.timestamp_pgsql FROM :schema.vw_join_gncy_rts_trps_srvcs AS gncy_rts_trps_srvcs LEFT JOIN :schema.trip_updates AS pdts ON gncy_rts_trps_srvcs.route_id = pdts.trip_route_id AND gncy_rts_trps_srvcs.trip_id = pdts.trip_trip_id ORDER BY gncy_rts_trps_srvcs.agency_name, gncy_rts_trps_srvcs.route_id, gncy_rts_trps_srvcs.trip_id, pdts.timestamp_pgsql;

16
sql/trip-updates.sql Normal file
View File

@ -0,0 +1,16 @@
-- colon before variable: for a prepared statement using named placeholders, this will be a parameter name of the form :name
CREATE SCHEMA IF NOT EXISTS :schema;
SET search_path to :schema, public;
-- create table
DROP TABLE IF EXISTS :schema.trip_updates CASCADE;
CREATE TABLE IF NOT EXISTS :schema.trip_updates
(
trip_trip_id text NULL,
trip_route_id text NULL,
timestamp_gtfsr timestamptz NULL,
timestamp_pgsql timestamptz NOT NULL DEFAULT now(),
delay int
);