3. 주문 필터링#
워크플로우의 이 단계에서는 조건 논리를 사용하여 데이터를 필터링하는 방법과 If 노드를 사용하여 노드에서 표현식을 사용하는 방법을 배웁니다.
Airtable에 처리 중인 주문만 삽입하려면 orderStatus
로 데이터를 필터링해야 합니다. 기본적으로, orderStatus
가 처리 중일 때 모든 기록을 Airtable에 삽입하라고 프로그램에 지시하고, 그렇지 않으면, 예를 들어 orderStatus
가 처리 중이 아닐 경우, 다른 orderStatus (booked)
를 가진 모든 주문의 합계를 계산하고 싶습니다.
이 if-then-else 명령은 조건 논리입니다. n8n 워크플로우에서는 If node를 사용하여 비교 작업을 기반으로 조건적으로 워크플로우를 분리할 수 있습니다.
If vs. Switch
If 노드를 사용하여 가능한 두 개 이상의 조건 경로에서 데이터를 필터링해야 하는 경우 Switch node를 사용하십시오. Switch node는 If node와 유사하지만 여러 출력 경로를 지원합니다.
Airtable 노드에 대한 연결 제거#
먼저, HTTP 요청 노드와 Airtable 노드 사이의 연결을 제거합시다:
- HTTP Request 노드와 Airtable 노드 사이의 화살표 연결에 마우스를 올립니다.
- 연결을 제거하기 위해 쓰레기 아이콘을 선택합니다.
If 노드 구성#
Airtable 노드와의 연결이 제거되면, HTTP 요청 노드에 연결된 If 노드를 추가합니다:
- HTTP 요청 노드에서 나오는 + 기호를 선택합니다.
- If 노드를 검색합니다.
- 검색 결과에 나타나면 선택합니다.
If 노드에서는 표현식을 사용할 것입니다.
Expressions
Expression은 입력에 따라 값을 나타내는 프로그래밍 언어의 문자 및 기호 문자열입니다. n8n 워크플로우에서는 노드에서 입력 데이터에 대한 다른 노드를 참조하기 위해 표현식을 사용할 수 있습니다. 우리의 예에서 If 노드는 HTTP 요청 노드가 출력한 데이터를 참조합니다.
If 노드 창에서 매개변수를 구성합니다:
-
값 1:
{{ $json.orderStatus }}
-
연산: 문자열 > 같음
- 값 2: processing
Data Type
Operation을 선택할 때 올바른 데이터 유형(부울, 날짜 및 시간, 숫자 또는 문자열)을 선택해야 합니다.
Test step를 선택하여 If 노드를 테스트합니다.
귀하의 결과는 다음과 같아야 합니다:

orderStatus
가 processing
인 주문은 True Branch 출력에 표시되어야 하며, orderStatus
가 booked
인 주문은 False Branch 출력에 표시되어야 합니다.
Airtable에 데이터 삽입하기#
다음으로, 이 데이터를 Airtable에 삽입하려고 합니다. Nathan이 Airtable에 데이터 삽입하기 수업의 마지막에 한 말을 기억하나요?
사실, 테이블에 처리 중인 주문만 삽입해야 해요...
Nathan이 테이블에 processing
주문만 필요하므로, Airtable 노드를 If 노드의 true
커넥터에 연결할 것입니다.
이 경우, Airtable 노드는 이미 캔버스에 있으므로 HTTP 요청의 true
커넥터를 선택하고 Airtable 노드로 드래그합니다.
이 시점에서 Airtable 노드를 다시 테스트하는 것이 좋습니다. 그 전에 Airtable에서 테이블을 열고 기존의 모든 행을 삭제하십시오. 그런 다음 n8n에서 Airtable 노드 창을 열고 단계 테스트를 선택합니다.
Airtable에서 데이터를 검토하여 워크플로우가 올바른 주문(주문 상태가 processing
인 주문)만 추가했는지 확인하십시오.
이 단계에서 귀하의 워크플로우는 다음과 같아야 합니다:

다음은 무엇인가요?#
Nathan 🙋: 이 If 노드는 데이터를 필터링하는 데 정말 유용해요! 이제 처리 중인 주문에 대한 모든 정보를 가지고 있어요. 사실, employeeName
과 orderID
만 필요하지만, 혹시나 해서 다른 필드도 모두 남겨둘 수 있을 것 같아요.
You 👩🔧: 사실, 그렇게 하는 것은 추천하지 않아요. 더 많은 데이터를 삽입하면 더 많은 컴퓨터 성능이 필요하고, 데이터 전송 속도가 느려지고 시간이 더 걸리며, 테이블의 저장 리소스도 더 많이 차지합니다. 이 경우, 5개의 특성을 가진 14개의 레코드는 그리 많지 않아 보일 수 있지만, 비즈니스가 수천 개의 레코드와 수십 개의 특성으로 성장하면 상황이 달라질 수 있으며, 추가적인 열 하나가 성능에 영향을 줄 수 있습니다.
Nathan 🙋: 아, 그거 알아두면 좋네요. 처리 중인 주문에서 두 개의 필드만 선택할 수 있나요?
You 👩🔧: 물론이죠, 다음 단계에서 그렇게 할게요.