SQL NOT IN
The inverse of IN — matches anything NOT in the list.
What & Why
NOT IN keeps rows whose value doesn't appear anywhere in the list.
See How It Works
| id | name | channel | spend | start_date | end_date | status | target_segment |
|---|---|---|---|---|---|---|---|
| 1 | Spring Launch | google_ads | 55000.00 | 2024-01-15 | 2024-03-31 | active | smb |
| 2 | Retention Webinar | 45000.00 | 2024-02-10 | 2024-04-15 | active | enterprise | |
| 3 | Finance Retargeting | 50000.00 | 2024-03-12 | 2024-05-31 | active | enterprise | |
| 4 | Enterprise Search | google_ads | 60000.00 | 2024-04-01 | 2024-06-30 | active | enterprise |
EXAMPLE QUERY
SELECT name FROM marketing.campaigns
WHERE channel NOT IN ('google_ads', 'linkedin');RESULT
| name |
|---|
| Retention Webinar |
The result uses the same Queryflo columns shown in the worked example.
Now You Try
Practice this concept
Marketing wants campaigns from every channel except Facebook and LinkedIn.
Available schema
marketingPrefix tables with marketing.table_name.
namechannelstatusmarketing.campaigns| Column | Type |
|---|---|
| id | integer |
| name | text |
| channel | text |
| spend | numeric |
| start_date | date |
| end_date | date |
| status | text |
| target_segment | text |
| legacy_id | text |
query.sql
Sign up free to try it on a real business scenario