Filter Settings
Filters define what data to extract from a Source, querying only those Source records that match specific conditions. You can use filters in all Skyvia data integration tools. CSV files don’t support filters.
To apply a filter, specify a filter condition in the Source settings in your integration.
Configuring Filter
To configure a filter, add a filter condition. A filter condition is a logical expression that compares a field of a queried object with a specified value. A simple filter condition includes an object and a field to which the filter is applied, a logical operator, and a value.
Logical operator
The list of supported operators depends on the connector and may vary for different connectors and field types. Skyvia supports the following logical operators in filters:
Field Type | Operator |
---|---|
Numeric | equals (= ), not equals (!= ), less than (< ), less than or equal to (<= ), greater than(> ), greater than or equal to (>= ), is null, is not null |
Text | equals, not equals, contains, does not contain, starts with, does not start with, is null, is not null |
Date or Datetime | equals (= ), not equals (!= ), less than (< ), less than or equal to (<= ), greater than(> ), greater than or equal to (>= ), is null, is not null. |
Boolean | equals(= ), not equals (!= ), is null, is not null. |
Filter Value
Filter value is a constant compared with the filtered field. Skyvia supports the value and relative types of filter values for Data Integration tools.
Value
The filtered field is compared with the constant. Skyvia supports it for all data types.
Relative
Skyvia generates complex expressions on the backend for filters by the Date and DateTime fields and interprets these expressions in easy-to-understand syntaxes, such as YESTERDAY, TODAY, TOMORROW, LAST_WEEK, THIS_WEEK, NEXT_WEEK, LAST_MONTH, THIS_MONTH, NEXT_MONTH, LAST_YEAR, THIS_YEAR, NEXT_YEAR, LAST_RUN.
Relative filters involve cache if a Source API doesn’t support native filter for a field. It may affect API calls usage.
Condition Group
You can use more than one filter condition. Using the AND(All) or OR(Any) logical operators, you can join multiple filter conditions into groups.
Match all of the following conditions (AND) — Skyvia selects records with values that meet all the specified conditions.
Match any of the following conditions (OR) — Skyvia selects records with values that meet at least one specified condition.
Specifics
When you use filters, Skyvia’s behavior depends on whether the Source API supports a filter for the specified field.
Cloud Sources APIs may support specific filter operations for particular fields. We call such filters native filters. When you use a filter, the Source API returns the already filtered data directly. You can find details about supported native filters for each connector in a specific connector topic.
If a Source API doesn’t support a native filter for a field or an operator, Skyvia writes the source data into the cache. Then, Skyvia applies a filter to this cache.
Cached filters take time and consume extra API calls.
Example
You want to export active Salesforce price book entries modified during the last month and have tea in their Name field. To do that, prepare the export first. Select Salesforce as the Source and add the Export task. On the Source Definition tab, select the PricebookEntry object. To apply a filter, do the following.
- Select the And logical operator for a root condition group.
- Click +Condition and select the IsActive field in the drop-down list.
- Select equals operator and set the value to True.
- Add one more condition and select the LastModifiedDate field.
- Select the
>=
operator and choose the needed date in the calendar box. Let it be the 1st of April. - Add the last condition and select the Name field.
- Select Name in the second drop-down list.
- Select contains and enter tea in the text box.
The result includes records matching all three conditions at once.