create function jsonb_extract in tps schema
This commit is contained in:
parent
4b2851a61d
commit
b40f3edcda
@ -2,8 +2,8 @@
|
|||||||
-- PostgreSQL database dump
|
-- PostgreSQL database dump
|
||||||
--
|
--
|
||||||
|
|
||||||
-- Dumped from database version 10.2
|
-- Dumped from database version 10rc1
|
||||||
-- Dumped by pg_dump version 10.2
|
-- Dumped by pg_dump version 10rc1
|
||||||
|
|
||||||
SET statement_timeout = 0;
|
SET statement_timeout = 0;
|
||||||
SET lock_timeout = 0;
|
SET lock_timeout = 0;
|
||||||
@ -82,6 +82,28 @@ END;
|
|||||||
$$;
|
$$;
|
||||||
|
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Name: jsonb_extract(jsonb, text[]); Type: FUNCTION; Schema: tps; Owner: -
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE FUNCTION jsonb_extract(rec jsonb, key_list text[]) RETURNS jsonb
|
||||||
|
LANGUAGE plpgsql
|
||||||
|
AS $$
|
||||||
|
DECLARE
|
||||||
|
t text[];
|
||||||
|
j jsonb := '{}'::jsonb;
|
||||||
|
|
||||||
|
BEGIN
|
||||||
|
FOREACH t SLICE 1 IN ARRAY key_list LOOP
|
||||||
|
--RAISE NOTICE '%', t;
|
||||||
|
--RAISE NOTICE '%', t[1];
|
||||||
|
j := j || jsonb_build_object(t[1],rec#>t);
|
||||||
|
END LOOP;
|
||||||
|
RETURN j;
|
||||||
|
END;
|
||||||
|
$$;
|
||||||
|
|
||||||
|
|
||||||
--
|
--
|
||||||
-- Name: srce_set(text, jsonb); Type: FUNCTION; Schema: tps; Owner: -
|
-- Name: srce_set(text, jsonb); Type: FUNCTION; Schema: tps; Owner: -
|
||||||
--
|
--
|
||||||
|
@ -21,7 +21,7 @@ DECLARE _log_id text;
|
|||||||
|
|
||||||
BEGIN
|
BEGIN
|
||||||
|
|
||||||
_path := 'C:\users\fleet\downloads\discover-recentactivity-20171031.csv';
|
_path := 'C:\users\ptrowbridge\documents\tps_etl\sample_discovercard\data.csv';
|
||||||
_srce := 'DCARD';
|
_srce := 'DCARD';
|
||||||
|
|
||||||
----------------------------------------------------build the column list of the temp table----------------------------------------------------------------
|
----------------------------------------------------build the column list of the temp table----------------------------------------------------------------
|
||||||
@ -80,7 +80,7 @@ BEGIN
|
|||||||
|
|
||||||
,pending_list AS (
|
,pending_list AS (
|
||||||
SELECT
|
SELECT
|
||||||
jsonb_extract(
|
tps.jsonb_extract(
|
||||||
row_to_json(i)::jsonb
|
row_to_json(i)::jsonb
|
||||||
,ext.text_array
|
,ext.text_array
|
||||||
) json_key,
|
) json_key,
|
||||||
|
Loading…
Reference in New Issue
Block a user