tps/sample_discovercard/mapping.md

125 lines
7.0 KiB
Markdown
Raw Normal View History

2018-02-21 00:41:46 -05:00
regular expression screen
---------------------------------------------
```
+------------------------+----+
source | DCARD | \/ |
+-----------------------------+
+-----------------------------+
new name |First 20 |
+-----------------------------+
+-----------------------------+
function | extract(replace) | \/ |
+------------------------+----+
(each block is a regex, all blocks are concatenated into an array and linked to mapped ^alues)
first 20 characters
+----------------------------------+
+----------------------------------------------------------------------------------------------------+
+ | +-----------------------------+ |
| | Field Name| Description | \/| expressed as jsonb path "{Description}") |
+-------+ | +-----------------------------+ |
| | +-------------------------+ |
+ |label of return ^alue |f20 | |
| +-------------------------+ |
| +-------------------------+ |
| regular expression |.{1,20} | supply test run ^alues |
| +-------------------------+ |
| +-------------------------+ |
| replace wit | | |
| +-------------------------+ |
| +---+ |
| Map Results|Y/N| |
| +---+ |
| +---+ |
| Find All Matches| g | |
| +---+ |
| filter(s) |
| +-------------------------------------------+ |
| +----------------+ +----------------+ |
| |Category | |Restaurantes | |
| +----------------+ +----------------+ |
| +----------------+ +----------------+ |
| |Category | |Services | |
| +----------------+ +----------------+ |
| |
+----------------------------------------------------------------------------------------------------+
```
2018-02-17 13:57:14 -05:00
map definition
----------------------------------------------------------
{
"defn": [
{
"key": "{Description}",
"map": "y",
2018-02-21 00:41:46 -05:00
"flag": "g",
2018-02-17 13:57:14 -05:00
"field": "f20",
"regex": ".{1,20}",
"retain": "y"
}
],
"name": "First 20",
"where": [
2018-02-21 00:41:46 -05:00
{"Category":"Restaurantes"},
{"Category":"Services"}
2018-02-17 13:57:14 -05:00
],
"function": "extract",
"description": "pull first 20 characters from description for mapping"
}
2018-02-26 15:22:38 -05:00
SQL
---------------------------------------------
INSERT INTO
tps.map_rm
SELECT
'DCARD',
'First 20',
$$ {
"defn": [
{
"key": "{Description}",
"map": "y",
"flag": "g",
"field": "f20",
"regex": ".{1,20}",
"retain": "y"
}
],
"name": "First 20",
"where": [
{"Category":"Restaurantes"},
{"Category":"Services"}
],
"function": "extract",
"description": "pull first 20 characters from description for mapping"
} $$::jsonb,
1
2018-02-17 13:57:14 -05:00
2018-02-21 00:41:46 -05:00
assign new key/values to the results of the regular expression, and then back to the underlying row it came from
-----------------------------------------------------------------------------------------------------------------
```
+---------------------------------+------------------+---------------+---------------+-----------------+----------------+
| returned from expression | party | reason | city | provice | |
+-----------------------------------------------------------------------------------------------------------------------+
| {"f20": "BIG LOTS #00453 STOW"} | Big Lots |Home Supplies |Stow |Ohio | |
| {"f20": "1794MOTHERHOOD #1794"} | Motherhood |Clothes | | | |
| {"f20": "3 PALMS HUDSON OH"} | 3 Palms |Restaurantes |Hudson |Ohio | |
| {"f20": "36241 7-ELEVEN STOW "} | 7-Ele^en |Gasoline |Stow |Ohio | |
| {"f20": "7-ELEVEN 36241 STOW "} | 7-Eleven |Gasoline |Stow |Ohio | |
| {"f20": "98626 - 200 PUBLIC S"} | Public Sq Parking|Recreation | | | |
| {"f20": "ACE HARDWARE HUDSON "} | Ace Hardware |Home Maint |Hudson |Ohio | |
| {"f20": "ACH CAFE AND STARBUC"} | Starbucks |Restaurantes | | | |
+---------------------------------+----------------------------------+---------------+-----------------+----------------+
```