---
description: Transformations are the objects in Informatica which creates, modifies or passes data to the defined target structures (tables, files or any other target). The purpose of the transformation in Informa
title: INFORMATICA Transformations Tutorial &#038; Filter Transformation
image: https://www.guru99.com/images/informatica-transformations-filter.png
---

[Skip to content](#main)

**⚡ Smart Summary**

Transformations in Informatica are the mapping objects that create, modify or pass data toward a target, and the Filter transformation is the active object that drops every row failing a single filter condition.

- 🔗 **Connectivity:** Connected transformations sit in the pipeline, while unconnected ones are called from inside another transformation.
- 🔁 **Row count:** Active transformations change the number of rows; passive ones only change values inside a row.
- 🎯 **Filter basics:** One condition decides which rows continue, and every other row leaves the pipeline.
- 🧪 **Worked example:** The condition deptno=10 loads only department ten records into EMP\_TARGET.
- 📄 **Session log:** Rows evaluating to FALSE are discarded and recorded in the session log.
- ⚡ **Placement:** Keeping the Filter close to the source stops discarded rows entering later transformations.

Read More

![Informatica Transformations and Filter Transformation](https://www.guru99.com/images/informatica-transformations-filter.png)

## What is Transformation?

Transformations in Informatica are the objects that create, modify or pass data to the defined target structures (tables, files or any other target).

The purpose of a transformation in Informatica is to modify the source data as per the requirement of the target system. It also ensures the quality of the data being loaded into the target.

Informatica provides various transformations to perform specific functionalities.

For example, performing tax calculation based upon source data, data cleansing operation, etc. In transformations, we connect the ports to pass data to it, and the transformation returns the output through output ports.

## Classification of Transformation

Transformations are classified into two categories, one based on connectivity and the other based on the change in the number of rows. First we will look at the transformations based on connectivity.

### Types of Transformation Based on Connectivity

- Connected Transformations
- Unconnected Transformations

In Informatica, during mappings the transformations which are connected to other transformations are called connected transformations.

For example, [Source Qualifier transformation](https://www.guru99.com/source-qualifier-transformation-informatica.html) of source table EMP is connected to a Filter transformation to filter employees of a department.

Those transformations that are not connected to any other transformations are called unconnected transformations.

Their functionality is used by calling them inside other transformations like the Expression transformation. These transformations are not part of the pipeline.

The connected transformations are preferred when, for every input row, the transformation is called or is expected to return a value. For example, for the zip codes in every row, the transformation returning the city name.

The unconnected transformations are useful when their functionality is only required periodically or based upon certain conditions. For example, calculating the tax details if the tax value is not available.

The diagram below places both pairs of categories side by side.

[![Informatica transformations classified by connectivity and by change in row count]()](https://www.guru99.com/images/informatica/083115_1041_Introductio2.png)

### Types of Transformation Based on the Change in Number of Rows

- Active Transformations
- Passive Transformations

Active transformations are those that modify the data rows and the number of input rows passed to them. For example, if a transformation receives ten rows as input and returns fifteen rows as output, then it is an active transformation. The data in the row is also modified in an active transformation.

Passive transformations are those that do not change the number of input rows. In passive transformations the number of input and output rows remain the same, and only data is modified at row level.

In a passive transformation, no new rows are created and no existing rows are dropped.

## Following is the List of Transformations in Informatica

- [Source Qualifier Transformation](https://www.guru99.com/source-qualifier-transformation-informatica.html)
- [Aggregator Transformation](https://www.guru99.com/aggregator-transformation-informatica.html)
- [Router Transformation](https://www.guru99.com/router-transformation-informatica.html)
- [Joiner Transformation](https://www.guru99.com/joiner-transformation-informatica.html)
- [Rank Transformation](https://www.guru99.com/rank-transformation-informatica.html)
- [Sequence Generator Transformation](https://www.guru99.com/sequence-generator-transformation-informatica.html)
- [Transaction Control Transformation](https://www.guru99.com/transaction-control-transformation-informatica.html)
- [Lookup and Re-usable Transformation](https://www.guru99.com/lookup-re-usable-transformation-informatica.html)
- [Normalizer Transformation](https://www.guru99.com/normalizer-transformation-informatica.html)
- [Performance Tuning for Transformation](https://www.guru99.com/performance-tuning-transformation-informatica.html)
- External Transformation
- Expression Transformation

**Don't Miss:**

- [Mapping in Informatica: Create, Components & Parameters](https://www.guru99.com/mappings-informatica.html)
- [Workflow in Informatica: Create, Task & Manager](https://www.guru99.com/workflows-informatica.html)
- [Transaction Control Transformation in Informatica (Example)](https://www.guru99.com/transaction-control-transformation-informatica.html)
- [Lookup Transformation in Informatica (Example)](https://www.guru99.com/lookup-re-usable-transformation-informatica.html)

## What is Filter Transformation?

Filter Transformation is an active transformation as it changes the number of records.

Using the Filter transformation, we can filter the records based on the filter condition.

For example, for loading the employee records having deptno equal to 10 only, we can put a Filter transformation in the mapping with the filter condition deptno=10. So only those records which have deptno=10 will be passed by the Filter transformation, and the rest of the records will be dropped.

The default filter condition is TRUE, so a newly created Filter transformation passes every row until a condition is entered. Each row returning FALSE is dropped and a message is written to the session log.

### How to Use Filter Transformation

**Step 1)** Create a [mapping](https://www.guru99.com/mappings-informatica.html) having source “EMP” and target “EMP\_TARGET”.

[![Mapping with the EMP source and the EMP\_TARGET target opened in Mapping Designer]()](https://www.guru99.com/images/informatica/083115_1041_Introductio3.png)

**Step 2)** Then in the mapping:

1. Select the Transformation menu
2. Select the Create option

[![Create option chosen from the Transformation menu of the Mapping Designer]()](https://www.guru99.com/images/informatica/083115_1041_Introductio4.png)

**Step 3)** Then in the Create Transformation window:

1. Select Filter Transformation from the list
2. Enter the transformation name “fltr\_deptno\_10”
3. Select the Create option

[![Create Transformation window with Filter Transformation and the name fltr\_deptno\_10]()](https://www.guru99.com/images/informatica/083115_1041_Introductio5.png)

**Step 4)** The Filter transformation will be created. Select the “Done” button in the Create Transformation window.

[![New fltr\_deptno\_10 transformation placed on the mapping canvas]()](https://www.guru99.com/images/informatica/083115_1041_Introductio6.png)

**Step 5)** In the mapping:

1. Drag and drop all the Source Qualifier columns to the Filter transformation
2. Link the columns from the Filter transformation to the target table

[![Source Qualifier ports linked into the Filter transformation and on to EMP\_TARGET]()](https://www.guru99.com/images/informatica/083115_1041_Introductio7.png)

**Step 6)** Double-click the Filter transformation to open its properties, and then:

1. Select the Properties tab
2. Click the Filter Condition editor

[![Properties tab of the Filter transformation showing the Filter Condition row]()](https://www.guru99.com/images/informatica/083115_1041_Introductio8.png)

**Step 7)** Then in the filter condition expression editor:

1. Enter the filter condition – deptno=10
2. Select the OK button

[![Expression editor with the filter condition deptno=10 entered and validated]()](https://www.guru99.com/images/informatica/083115_1041_Introductio9.png)

**Step 8)** Now again in the Edit Transformations window, in the Properties tab you will see the filter condition. Select the OK button.

[![Filter condition deptno=10 shown against the Filter Condition property]()](https://www.guru99.com/images/informatica/083115_1041_Introductio10.png)

Now save the mapping and execute it after creating the [session](https://www.guru99.com/session-objects-informatica.html) and [workflow](https://www.guru99.com/workflows-informatica.html). In the target table, only the records having deptno=10 will be loaded.

In this way, you can filter the source records using the Filter transformation.

## Filter vs Router vs Source Qualifier Filter

Three objects in Informatica can remove unwanted rows, and picking the wrong one costs either performance or visibility of the rejected data.

| Object | How rows are removed | When to choose it |
| --- | --- | --- |
| Filter transformation | One condition per transformation. Rows returning FALSE are dropped and noted in the session log. | A single, simple rule applied inside the mapping. |
| [Router transformation](https://www.guru99.com/router-transformation-informatica.html) | Several group conditions on one pass. Rows matching no group go to the default group. | Rows must be split into several streams, or rejected rows must be captured. |
| [Source Qualifier](https://www.guru99.com/source-qualifier-transformation-informatica.html) filter | The condition becomes part of the WHERE clause of the SQL read from a relational source. | The source is relational and unwanted rows should never leave the database. |

A single Router reads the incoming data once, while several Filter transformations testing the same input make the Integration Service process that data again for each one. The Source Qualifier filter limits what is extracted from the source, whereas the Filter transformation limits what is sent on to the target.

## Tips to Improve Filter Transformation Performance

The filter condition is evaluated for every row that reaches the transformation, so where the object sits in the mapping has a direct effect on session time.

- Place the Filter transformation as close to the source as possible, so unwanted rows never travel through the later transformations.
- Push the condition into the Source Qualifier when the source is relational, because the database filters rows faster than the Integration Service.
- Keep the condition simple. A complex expression can be moved to an Expression transformation and reduced to a single flag port that the Filter tests.
- Use one Router instead of several Filter transformations that test the same input, so the incoming data is read only once.
- Remember that the default condition is TRUE, so a Filter left unconfigured passes everything and hides the mistake.

Because every dropped row is written as a message in the session log, an unexpectedly empty target is usually explained by reading that log rather than by re-running the mapping.

## FAQs

🧮 How many conditions can one Filter object hold?

Only one. The expression may combine several tests with AND and OR, but the transformation evaluates a single expression that returns TRUE or FALSE for each incoming row.

🚫 What happens when the condition evaluates to null?

A null result is treated as FALSE, so the row is dropped. Wrapping the port in ISNULL or IIF makes the intent explicit and prevents rows disappearing without an obvious reason.

🔤 Is the filter condition case sensitive?

Yes. String comparisons respect case, so a value such as SALES does not match Sales. Applying UPPER or LOWER to the port keeps the test reliable when source data is inconsistent.

🔢 Which objects can return more rows than they receive?

Active ones. The [Normalizer](https://www.guru99.com/normalizer-transformation-informatica.html) turns a single record with repeated columns into several rows, and a Union merges pipelines. Passive objects always return the same row count.

🧩 Why does an unconnected object need a calling expression?

Nothing feeds it rows, because it has no links in the pipeline. Another transformation calls it by name with arguments, receives one return value, and the object runs only for those calls.

🗂️ Does a reusable object exist outside a single mapping?

Yes. Reusable objects are built in the Transformation Developer and stored in the repository, so one definition can be dropped into many [mappings](https://www.guru99.com/mappings-informatica.html) and edited in a single place.

🤖 How does AI change the way transformation logic is designed?

Machine learning in modern integration tools profiles the source, proposes cleansing and matching rules and flags columns whose values drift, so the designer starts from a suggested pipeline rather than a blank canvas.

🧑‍💻 Can GitHub Copilot write Informatica filter expressions?

Copilot drafts expression syntax such as IIF, ISNULL and DECODE from a plain description, which speeds up condition writing. Each generated expression still needs testing against real rows inside the Designer.

#### Summarize this post with:

ChatGPTPerplexityGrokGoogle AI

**Stay Updated on AI** **Get Weekly AI Skills, Trends, Actionable Advice.**

##### Sign up for the newsletter

Subscribe for Free

You have successfully subscribed.  
Please check your inbox.

![AI-Newsletter]() Chosen by over **350,000+** professionals

[Scroll to top](#wrapper)

×

Search for:

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://www.guru99.com/#organization","name":"Guru99","sameAs":["https://www.facebook.com/Guru99Official","https://twitter.com/guru99com"],"logo":{"@type":"ImageObject","@id":"https://www.guru99.com/#logo","url":"https://www.guru99.com/images/guru99-logo-v1-150x59.png","contentUrl":"https://www.guru99.com/images/guru99-logo-v1-150x59.png","caption":"Guru99","inLanguage":"en-US"}},{"@type":"WebSite","@id":"https://www.guru99.com/#website","url":"https://www.guru99.com","name":"Guru99","publisher":{"@id":"https://www.guru99.com/#organization"},"inLanguage":"en-US"},{"@type":"ImageObject","@id":"https://www.guru99.com/images/informatica-transformations-filter.png","url":"https://www.guru99.com/images/informatica-transformations-filter.png","width":"700","height":"250","caption":"Informatica Transformations &amp; Filter","inLanguage":"en-US"},{"@type":"BreadcrumbList","@id":"https://www.guru99.com/introduction-transformations-informatica-and-filter-transformation.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":"1","item":{"@id":"https://www.guru99.com","name":"Home"}},{"@type":"ListItem","position":"2","item":{"@id":"https://www.guru99.com/informatica","name":"Informatica"}},{"@type":"ListItem","position":"3","item":{"@id":"https://www.guru99.com/introduction-transformations-informatica-and-filter-transformation.html","name":"INFORMATICA Transformations Tutorial &#038; Filter Transformation"}}]},{"@type":"WebPage","@id":"https://www.guru99.com/introduction-transformations-informatica-and-filter-transformation.html#webpage","url":"https://www.guru99.com/introduction-transformations-informatica-and-filter-transformation.html","name":"INFORMATICA Transformations Tutorial &#038; Filter Transformation","dateModified":"2026-10-10T16:35:10+05:30","isPartOf":{"@id":"https://www.guru99.com/#website"},"primaryImageOfPage":{"@id":"https://www.guru99.com/images/informatica-transformations-filter.png"},"inLanguage":"en-US","breadcrumb":{"@id":"https://www.guru99.com/introduction-transformations-informatica-and-filter-transformation.html#breadcrumb"}},{"@type":"Person","@id":"https://www.guru99.com/author/editorial","name":"Editorial Team","url":"https://www.guru99.com/author/editorial","image":{"@type":"ImageObject","@id":"https://www.guru99.com/images/favicon-new-logo.png","url":"https://www.guru99.com/images/favicon-new-logo.png","caption":"Editorial Team","inLanguage":"en-US"},"sameAs":["https://www.guru99.com/editorial-team"],"worksFor":{"@id":"https://www.guru99.com/#organization"}},{"@type":"NewsArticle","headline":"INFORMATICA Transformations Tutorial &#038; Filter Transformation","keywords":"informatica","dateModified":"2026-10-10T16:35:10+05:30","articleSection":"Informatica","author":{"@id":"https://www.guru99.com/author/editorial","name":"Editorial Team"},"publisher":{"@id":"https://www.guru99.com/#organization"},"description":"Transformations are the objects in Informatica which creates, modifies or passes data to the defined target structures (tables, files or any other target). The purpose of the transformation in Informa","copyrightYear":"2026","copyrightHolder":{"@id":"https://www.guru99.com/#organization"},"name":"INFORMATICA Transformations Tutorial &#038; Filter Transformation","@id":"https://www.guru99.com/introduction-transformations-informatica-and-filter-transformation.html#richSnippet","isPartOf":{"@id":"https://www.guru99.com/introduction-transformations-informatica-and-filter-transformation.html#webpage"},"image":{"@id":"https://www.guru99.com/images/informatica-transformations-filter.png"},"inLanguage":"en-US","mainEntityOfPage":{"@id":"https://www.guru99.com/introduction-transformations-informatica-and-filter-transformation.html#webpage"}}]}
```
