# Filtering Dataset using expression binding

**URL:** <https://forum.inductiveautomation.com/t/filtering-dataset-using-expression-binding/82949>\
**Category:** Ignition\
**Tags:** vision\
**Created:** [December 10, 2023, 8:29pm UTC](https://forum.inductiveautomation.com/t/filtering-dataset-using-expression-binding/82949 "2023-12-10T20:29:01Z")\
**Posts on this page:** 1\
**Showing post:** 4

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [December 10, 2023, 9:02pm UTC](https://forum.inductiveautomation.com/t/filtering-dataset-using-expression-binding/82949/4 "2023-12-10T21:02:55Z")

</div>

Yes, in my [Integraton Toolkit](https://forum.inductiveautomation.com/t/automation-professionals-integration-toolkit-module/74934) module. The [where()](https://www.automation-pros.com/toolkit/doc/iteration.html#where) expression function, in particular.

If you just want specific row indices, like the first two rows, use `idx()` in the condition, like so:

```auto
where({path.to.source.dataset}, idx() < 2)

```

If you actually want to check the content, like matching the 3-letter prefix on `ProductCode`, you'd do something like this:

```auto
where({path.to.source.dataset}, left(it()['ProductCode'], 3) = 'BAN')

```

---

_[View the full topic](https://forum.inductiveautomation.com/t/filtering-dataset-using-expression-binding/82949)._
