diff options
Diffstat (limited to 'scripts/jq')
-rw-r--r-- | scripts/jq/transform-creators.jq | 1 | ||||
-rw-r--r-- | scripts/jq/transform-product-creators.jq | 6 | ||||
-rw-r--r-- | scripts/jq/transform-products.jq | 11 |
3 files changed, 18 insertions, 0 deletions
diff --git a/scripts/jq/transform-creators.jq b/scripts/jq/transform-creators.jq new file mode 100644 index 0000000..90b47d2 --- /dev/null +++ b/scripts/jq/transform-creators.jq @@ -0,0 +1 @@ +[.[].developers] | flatten | unique | .[] | "insert into creators (name) values ('\(. | gsub("'"; "''"))');" diff --git a/scripts/jq/transform-product-creators.jq b/scripts/jq/transform-product-creators.jq new file mode 100644 index 0000000..1a1bef7 --- /dev/null +++ b/scripts/jq/transform-product-creators.jq @@ -0,0 +1,6 @@ +.[] | select(has("steam_appid") and .type=="game") | + "insert into product_creators (creator, product, role) values ( + (select id from creators where name = '\(.developers[0]? // "" | gsub("'"; "''"))'), + \(.steam_appid), + 0 + );" diff --git a/scripts/jq/transform-products.jq b/scripts/jq/transform-products.jq new file mode 100644 index 0000000..48f51e7 --- /dev/null +++ b/scripts/jq/transform-products.jq @@ -0,0 +1,11 @@ +.[] | select(has("steam_appid") and .type=="game") | + "insert into products (id, engine, platforms, price, title, body, short, header) values ( + \(.steam_appid), + 0, + 0, + \(.price_overview.final? // 0), + '\(.name? // "no-name" | gsub("'"; "''"))', + '\(.detailed_description? // "no-desc" | gsub("'"; "''"))', + '\(.short_description? // "no-short-desc" | gsub("'"; "''"))', + '\(.header_image? // "https://waifu.cloudef.pw/loading.png" | gsub("'"; "''"))' + );" |