SQream Scripting
The Java- based SQreamDB scripting enhances your interaction with SQL by providing conventions which allow dynamic generation, management, and automation of SQL code and database operations.
Syntax
-- Double curly brackets
{{ … }}
-- Parallel:
@@ Parallel $$ ... $$
-- Declare:
@@ Declare '<my_parameter>' = <value>
-- SetResults:
@@ SetResults <result_variable>
-- SplitQueryByDateTime
@@ SplitQueryByDateTime instances = <value>, from = <value>, to = <value>
-- SplitQueryByDate
@@ SplitQueryByDate instances = <value>, from = <value>, to = <value>
-- SplitQueryByNumber
@@ SplitQueryByNumber instances = <value>, from = <value>, to = <value>
-- ${ ... }
Parameter |
Description |
---|---|
|
Double brackets can contain JavaScript code to be executed through the Editor |
|
Runs specified queries in parallel |
|
Declares a variable value |
|
Saves specified query results as a variable |
|
Splits query execution by a predefined number of instances and by specific |
|
Splits query execution by a predefined number of instances and by specific |
|
Splits query execution by a predefined number of instances and by specific |
Usage Notes
- Execution
Metalanguage scripting is available only through the SQreamDB web interface and cannot be used via the CLI.
Examples
Double Curly Brackets
{{
return 1;
}}
Parallel
@@ Parallel
$$
SELECT * FROM my_table;
SELECT * FROM our_table;
SELECT * FROM that_table;
$$;
Declare
@@ Declare myVar = 3;
SELECT '${myVar}';
SetResults
@@ SetResults tableAverage
SELECT AVG(col1) AS avg_salary FROM my_table;
SELECT col1 FROM my_table WHERE col1 > ${tableAverage[0].avg_salary};
SplitQueryByDateTime
@@ SplitQueryByDateTime instances = 4, from = '2021-01-01 00:00:00', to = '2022-01-01 00:00:00'
SELECT ${from}, ${to};
SplitQueryByDate
@@ SplitQueryByDateTime instances = 4, from = '2021-01-01', to = '2022-01-01'
SELECT ${from}, ${to};
SplitQueryByNumber
@@ SplitQueryByDateTime instances = 4, from = 0, to = 100
SELECT ${from}, ${to};