filteringlisted
Install: claude install-skill honeydew-ai/honeydew-ai-coding-agents-plugins
## Overview
Filtering restricts which rows contribute to a result. The same expression language applies across three contexts in Honeydew:
| Context | Where it appears | When it runs |
| ------------------------ | --------------------------------------------------------- | ------------------ |
| **Structured query** | `filters` parameter in `get_data_from_fields` / `get_sql_from_fields` | Pre-aggregation |
| **Metric aggregation** | `FILTER (WHERE ...)` on an aggregation | During aggregation |
| **Attribute expression** | `CASE WHEN ... END` in attribute SQL | Per-row evaluation |
| **Metric value filter** | Metric expression in `filters` parameter | Post-aggregation |
---
## Filter Expression Syntax
### Comparisons
```sql
entity.field = 'value'
entity.field > 100
entity.field >= 3 AND entity.field < 10
```
Operators: `=`, `<`, `>`, `>=`, `<=`, `!=`
You can compare an attribute to a constant or to another attribute. Cast mismatching types when comparing (e.g., `entity.field::DATE`).
### Strings
```sql
entity.field = 'exact value'
entity.field IN ('val1', 'val2', 'val3')
entity.field ILIKE '%keyword%'
```
- `ILIKE` is case-insensitive pattern matching (`%` = any characters, `_` = one character)
### Full-Text Search (Snowflake only)
Use `SEARCH` when you don't know exact values and need to find possible matches.
```sql
-- Single sear