# 목록 필터

> 필드에 특정 단어가 들어 있거나 마지막 실행 이후 날짜인 항목처럼, 조건에 맞는 목록 항목만 남기세요. 규칙은 AND나 OR로 조합합니다.

Source: https://nodaro.ai/ko/docs/nodes/automate/filter-list

**목록 필터** 노드는 조건에 맞는 목록 항목만 남깁니다. 각 조건은 모든 항목의 필드 하나를 검사합니다. 예를 들어 `likes`가 `1000`보다 큰지, `caption`에 `sale`이 들어 있는지 검사합니다. 여러 조건을 AND나 OR로 조합하세요. 남은 모든 항목이 다음 노드를 거치기 전에, 목록 필터로 스크래핑하거나 생성한 목록을 좁히세요. 이 노드는 무료입니다.

- Found in: Automate › Lists & Batching
- Output: data
- API type: `filter-list`

## 사용 시기
- 다시 작성하기 전에, 좋아요가 충분한 스크래핑 게시물만 남깁니다.
- 마지막 일정 실행 이후에 게시된 피드 항목만 남깁니다.
- 동영상이 없는 게시물처럼 필드가 빠진 항목을 제외합니다.
- 유료 노드를 거치기 전에 일괄 처리를 더 작고 저렴하게 만듭니다.

## 빠른 시작
### 노드 추가
캔버스에서 Tab 키를 누르고 **자동화 › 목록 및 일괄 처리 › 목록 필터**를 선택하세요.

### 목록 연결
목록을 **목록** 입력에 연결하세요. 예를 들어 [웹 스크래핑](https://nodaro.ai/docs/nodes/automate/web-scrape), [목록](https://nodaro.ai/docs/nodes/automate/list), [텍스트 분할](https://nodaro.ai/docs/nodes/automate/split-text)에서 연결합니다. 업스트림 노드에 결과가 생기면, 설정 패널의 <strong>업스트림 샘플(첫 번째 항목)</strong>에 첫 번째 항목이 표시됩니다.

### 조건 추가
**조건 추가**를 클릭하세요. 필드, 연산자, 값을 고르세요. 조건을 더 추가하고 **AND**나 **OR**를 골라 조합하세요.

### 실행
**필터링됨** 출력에는 조건을 통과한 항목만 담깁니다. 남은 항목마다 다음 노드를 한 번씩 실행하려면 그 연결을 **개별**로 설정하세요.

Workflow: 목록 필터가 인기 게시물을 남기고, 필드 추출이 그 캡션을 꺼내며, 텍스트 생성 - 모든 LLM 노드가 캡션을 하나씩 다시 작성합니다.

- Instagram → 목록 필터 (목록)
- 목록 필터 → 필드 추출 (소스)
- 필드 추출 → 텍스트 생성 - 모든 LLM (프롬프트 · 개별)

## 입력과 출력
| 입력 또는 출력 | 받거나 보내는 것 | 하는 일 |
| --- | --- | --- |
| **목록** | 텍스트 또는 JSON 항목의 목록 | 필터링할 목록입니다. 조건에 필드를 지정하면 각 항목을 JSON으로 읽습니다. |
| **변수** | 모든 노드의 출력 | 조건이 읽을 수 있는 값입니다. [각 조건](#each-condition)을 참고하세요. |
| **필터링됨** | 목록 | 조건을 통과한 항목이며, 원래 순서를 유지합니다. |

목록 필터는 항상 연결된 목록 전체를 다룹니다. **개별** 연결에서도 항목마다가 아니라 한 번만 실행됩니다. [텍스트 생성 - 모든 LLM](https://nodaro.ai/docs/nodes/automate/prompt) 노드의 **항목** 출력은 답변의 `===NEXT===` 블록마다 항목 하나를 넘기고, **텍스트** 출력은 답변 전체를 항목 하나로 넘깁니다.

## 설정
| 설정 | 하는 일 |
| --- | --- |
| **조건** | 검사마다 한 행이며, 필드, 연산자, 값으로 이루어집니다. 조건이 없으면 모든 항목이 통과합니다. |
| **AND** 또는 **OR** | **AND**는 모든 조건을 통과한 항목을 남깁니다. **OR**는 조건을 하나 이상 통과한 항목을 남깁니다. 기본값은 **AND**입니다. |
| **대소문자를 구분하여 텍스트 비교** | 기본적으로 켜져 있으므로 `Sale`과 `sale`은 서로 다릅니다. 선택을 해제하면 대문자와 소문자를 구분하지 않습니다. |
| **업스트림 샘플(첫 번째 항목)** | 들어오는 첫 번째 항목의 미리 보기로, 그 항목의 필드를 확인할 수 있습니다. 조건에서 사용하는 필드는 따로 표시됩니다. |

### 각 조건
- **필드** — 업스트림 데이터에서 감지된 필드를 고르거나, 항목 전체를 검사하려면 <strong>(항목 전체)</strong>를, `author.name` 같은 점 경로를 입력하려면 <strong>사용자 지정 경로…</strong>를 고르세요. **← 필드 목록으로 돌아가기**를 누르면 감지된 필드로 돌아갑니다.
- **연산자** — **다음과 같음**, **다음과 같지 않음**, **다음보다 큼**, **다음보다 작음**, **이상**, **이하**, **다음을 포함**, **다음을 포함하지 않음** 중 하나입니다. **다음으로 시작**, **다음으로 끝남**, **다음 정규식과 일치**, **존재함**, **존재하지 않음**도 고를 수 있습니다. **존재함**과 **존재하지 않음**에는 값이 필요 없습니다.
- **값** — 비교할 값입니다. 옆에 있는 토글로 직접 입력한 값과 변수 사이를 전환합니다.

값은 다른 노드의 출력을 읽을 수도 있습니다. 그 노드를 왼쪽 아래 입력인 **변수**에 연결하고, `{Keep id}`처럼 그 노드의 레이블을 중괄호로 감싸 값에 쓰세요. 예를 들어 남길 ID를 텍스트 생성 - 모든 LLM 노드가 답하게 할 수 있습니다. 그 노드 출력의 앞뒤 공백은 무시되므로, 줄바꿈으로 끝나는 답변도 필드와 같다고 판단됩니다.

## 날짜로 필터링
일부 필드에는 `created_at`, `published_at`, `timestamp`, `date`, 또는 이름이 `_at`이나 `Date`로 끝나는 필드처럼 날짜나 시간이 들어 있습니다. 조건에서 이런 필드를 **다음보다 큼**, **다음보다 작음**, **이상**, **이하**와 함께 쓰면 값이 날짜 선택기로 바뀝니다.

| 선택 | 비교 대상 |
| --- | --- |
| **마지막 실행 이후** | 워크플로의 트리거가 마지막으로 작동한 시각입니다. 트리거나 일정으로 시작한 실행에서만 작동합니다. 수동 실행에서는 빈 값으로 처리됩니다. |
| **최근 N시간** | 지금부터 N시간 전의 시각입니다. |
| **최근 N일** | 지금부터 N일 전의 시각입니다. |
| **최근 N주** | 지금부터 N주 전의 시각입니다. |
| **사용자 지정…** | 직접 입력한 날짜입니다. |

예를 들어 `published_at` **다음보다 큼** **최근 N일**에서 N을 1로 정하면, 최근 하루 동안 게시된 항목이 남습니다.

다른 필드에는 직접 입력한 값이나 다음 변수 중 하나를 쓸 수 있습니다.

- `{{now}}` — 현재 시각입니다.
- `{{trigger.last_triggered_at}}` — 워크플로의 트리거가 마지막으로 작동한 시각입니다.
- `{{last_N_hours:3}}`, `{{last_N_days:1}}`, `{{last_N_weeks:2}}` — 지금부터 거슬러 올라가는 시간 범위입니다. 숫자를 바꾸면 범위가 바뀝니다.

## 크레딧
목록 필터는 무료입니다.

## 팁
- **일괄 처리 전에 필터링하세요.** 제외한 항목 하나마다 다음 노드의 실행 한 번에 대한 비용을 내지 않습니다.
- **새 항목만 처리하세요.** [일정 트리거](https://nodaro.ai/docs/nodes/automate/schedule-trigger)를 **마지막 실행 이후** 조건과 함께 쓰면, 각 실행은 이전 실행 이후에 들어온 것만 처리합니다.
- **먼저 샘플을 보세요.** 조건에는 <strong>업스트림 샘플(첫 번째 항목)</strong>에 보이는 필드 이름을 그대로 써야 합니다.
- **필터링 대신 고르세요.** 위치로 항목 하나나 일부 구간을 가져오려면 [선택기](https://nodaro.ai/docs/nodes/automate/selector)를 사용하세요. 목록을 순서대로 정렬하려면 [목록 정렬](https://nodaro.ai/docs/nodes/automate/sort-list)을 사용하세요.

## 자주 묻는 질문

### Nodaro에서 목록의 일부 항목만 남기려면 어떻게 하나요?

목록 뒤에 목록 필터 노드를 추가하고, 규칙마다 조건을 하나씩 만드세요. 예를 들어 필드에 어떤 단어가 들어 있는지, 숫자가 기준값보다 큰지 검사합니다. “필터링됨” 출력에는 조건을 통과한 항목만 담깁니다.

### 목록 필터로 마지막 실행 이후의 새 항목만 남길 수 있나요?

네. published_at 같은 날짜 필드를 고르고, 연산자는 “다음보다 큼”, 값은 “마지막 실행 이후”로 정하세요. 트리거나 일정으로 시작한 실행에서 작동하며, 수동 실행에서는 “마지막 실행 이후”가 빈 값으로 처리됩니다.

### 목록 필터에 크레딧이 드나요?

아니요. 목록 필터는 무료입니다. 일괄 처리 전에 목록을 필터링하면 크레딧도 아낄 수 있습니다. 제외한 항목 하나마다 다음 노드의 실행 한 번에 대한 비용을 내지 않기 때문입니다.

### AND와 OR는 어떻게 다른가요?

AND는 모든 조건을 통과한 항목만 남깁니다. OR는 조건을 하나 이상 통과한 항목을 남깁니다. 기본값은 AND입니다.
