RandomInt
Generate a random integer within the provided interval.
Parameters¶
Name | Description | Default | Required | Supported DB types |
---|---|---|---|---|
column | The name of the column to be affected | Yes | int2, int4, int8 | |
min | The minimum threshold for the random value | Yes | - | |
max | The maximum threshold for the random value | Yes | - | |
keep_null | Indicates whether NULL values should be replaced with transformed values or not | true |
No | - |
engine | The engine used for generating the values [random , hash ]. Use hash for deterministic generation |
random |
No | - |
Dynamic parameters¶
Parameter | Supported types |
---|---|
min | int2, int4, int8 |
max | int2, int4, int8 |
Description¶
The RandomInt
transformer generates a random integer within the specified min
and max
thresholds. The behaviour
for NULL values can be configured using the keep_null
parameter.
The engine
parameter allows you to choose between random and hash engines for generating values. Read more about the
engines in the Transformation engines section.
Example: Generate random item quantity¶
In the following example, the RandomInt
transformer generates a random value in the range from 1
to 30
and assigns
it to
the orderqty
column.
- schema: "sales"
name: "salesorderdetail"
transformers:
- name: "RandomInt"
params:
column: "orderqty"
min: 1
max: 30
Result
Column | OriginalValue | TransformedValue |
---|---|---|
orderqty | 1 | 29 |
Example: Generate random sick leave hours based on vacation hours¶
In the following example, the RandomInt
transformer generates a random value in the range from 1
to the value of the
vacationhours
column and assigns it to the sickleavehours
column. This configuration allows for the simulation of
sick leave hours based on the number of vacation hours.
- schema: "humanresources"
name: "employee"
transformers:
- name: "RandomInt"
params:
column: "sickleavehours"
max: 100
dynamic_params:
min:
column: "vacationhours"
Result
Column | OriginalValue | TransformedValue |
---|---|---|
sickleavehours | 69 | 99 |