

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# FROM 절
<a name="iot-sql-from"></a>

FROM 절은 규칙이 [주제](topics.md#topicnames) 또는 [주제 필터](topics.md#topicfilters)를 구독하도록 지정합니다. 주제 또는 주제 필터를 작은따옴표(')로 묶으세요. 여기에 지정된 주제 필터와 일치하는 MQTT 주제로 전송된 각 메시지가 규칙을 트리거합니다. 주제 필터를 사용하여 비슷한 주제의 그룹을 구독할 수 있습니다.

**예:**

주제 `'topic/subtopic'`에 게시된 수신 페이로드: `{temperature: 50}`

주제 `'topic/subtopic-2'`에 게시된 수신 페이로드: `{temperature: 50}`

SQL: `"SELECT temperature AS t FROM 'topic/subtopic'"`.

규칙이 `'topic/subtopic'`를 구독하므로 수신 페이로드가 규칙에 전달됩니다. 규칙 작업에 전달되는 송신 페이로드는 `{t: 50}`입니다. 규칙이 `'topic/subtopic-2'`를 구독하지 않으며, 따라서 `'topic/subtopic-2'`에 게시된 메시지가 규칙을 트리거하지 않습니다.

**\# 와일드카드 예:**

'\#'(다중 레벨) 와일드카드 문자를 사용하여 하나 이상의 특정 경로 요소와 일치시킬 수 있습니다.

주제 `'topic/subtopic'`에 게시된 수신 페이로드: `{temperature: 50}`

주제 `'topic/subtopic-2'`에 게시된 수신 페이로드: `{temperature: 60}`

주제 `'topic/subtopic-3/details'`에 게시된 수신 페이로드: `{temperature: 70}`

주제 `'topic-2/subtopic-x'`에 게시된 수신 페이로드: `{temperature: 80}`

SQL: `"SELECT temperature AS t FROM 'topic/#'"`.

규칙이 `'topic'`으로 시작하는 모든 주제를 구독하므로 세 번 실행되어 `{t: 50}`(topic/subtopic), `{t: 60}`(topic/subtopic-2) 및 `{t: 70}`(topic/subtopic-3/details)의 송신 페이로드를 해당 작업으로 전송합니다. 규칙이 `'topic-2/subtopic-x'`를 구독하지 않으며, 따라서 `{temperature: 80}` 메시지가 규칙을 트리거하지 않습니다.

**\+ 와일드카드 예:**

'\+'(단일 레벨) 와일드카드 문자를 사용하여 어느 하나의 특정 경로 요소와 일치시킬 수 있습니다.

주제 `'topic/subtopic'`에 게시된 수신 페이로드: `{temperature: 50}`

주제 `'topic/subtopic-2'`에 게시된 수신 페이로드: `{temperature: 60}`

주제 `'topic/subtopic-3/details'`에 게시된 수신 페이로드: `{temperature: 70}`

주제 `'topic-2/subtopic-x'`에 게시된 수신 페이로드: `{temperature: 80}`

SQL: `"SELECT temperature AS t FROM 'topic/+'"`.

규칙이 첫 번째 요소가 `'topic'`인 2개의 경로 요소를 갖는 모든 주제를 구독합니다. 규칙은 `'topic/subtopic'` 및 `'topic/subtopic-2'`에 전송된 메시지에 대해 실행되지만, `'topic/subtopic-3/details'`(주제(topic) 필터보다 더 많은 레벨이 있음) 또는 `'topic-2/subtopic-x'`(`topic`으로 시작하지 않음)에 전송된 메시지에 대해서는 실행되지 않습니다.