지원 절 - AWS IoT SiteWise

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

지원 절

SELECT 문은 하나 이상의 뷰에서 데이터를 검색하는 데 사용됩니다.는 JOININNER JOIN 작업을 AWS IoT SiteWise 지원합니다.

뷰는 명시적 JOIN 구문 또는 FROM 절의 쉼표로 구분된 표기법으로 조인됩니다.

일반 SELECT 문:

SELECT expression [, ...] [ FROM table_name AS alias [, ...] ] [ WHERE condition ] [ GROUP BY expression [, ...] ] [ HAVING condition ] [ ORDER BY expression [ ASC | DESC ] [ NULLS FIRST | NULLS LAST ] [, ...] ] [ LIMIT expression ]

서로 다른 절이 있는 SELECT 문:

SELECT a.asset_name, a.asset_id, p.property_type, p.property_data_type, p.string_attribute_value, p.property_name FROM asset a, asset_property p WHERE a.asset_description LIKE '%description%' AND p.property_type IN ('attribute', 'metric') OR p.property_id IN ( SELECT property_id FROM raw_time_series WHERE event_timestamp BETWEEN TIMESTAMP '2025-01-01 00:00:00' AND TIMESTAMP '2025-01-02 00:00:00' GROUP BY asset_id, property_id HAVING COUNT(*) > 100 ) GROUP BY p.property_type HAVING COUNT(*) > 5 ORDER BY a.asset_name ASC LIMIT 20;
참고

암시적는 AWS IoT SiteWise의 내부 스키마를 기반으로 하는 JOIN 키워드를 사용하지 않고 두 개 이상의 서로 다른 테이블을 JOIN 결합합니다. 이는 메타데이터와 원시 데이터 테이블 간의 asset_idproperty_id 필드에 JOIN 대해를 수행하는 것과 동일합니다. 이 패턴을 사용하면 SiteWise가 원시 데이터 테이블에서 가져올 때 쿼리에서 지정된 메타데이터 필터를 활용하여 전체 데이터가 스캔되는 것을 줄일 수 있습니다.

예 쿼리의 :
SELECT a.asset_name, p.property_name, r.event_timestamp FROM asset a, asset_property p, raw_time_series r WHERE a.asset_name='my_asset' AND p.property_name='my_property'

위 예제에서는 지정된 메타데이터 이름에 속하는 자산 속성의 데이터만 스캔합니다.

예 위의 쿼리와 동일하게 최적화되지 않은의 :
SELECT a.asset_name, p.property_name, r.event_timestamp FROM asset a JOIN asset_property p ON a.asset_id=p.asset_id JOIN raw_time_series r ON p.asset_id=r.asset_id AND p.property_id=r.property_id WHERE a.asset_name='my_asset' AND p.property_name='my_property'

각 절과 그 설명에 대한 설명은 아래에 나열되어 있습니다.

Signature

설명

LIMIT

LIMIT { count }

이 절은 결과 집합을 지정된 행 수로 제한합니다. ORDER BYOFFSETLIMIT을 사용하거나 사용하지 않고를 사용할 수 있습니다.

LIMIT는 [0,2147483647]의 음수가 아닌 정수에서만 작동합니다.

ORDER BY

ORDER BY expression [ ASC | DESC ] [ NULLS FIRST | NULLS LAST ]

ORDER BY 절은 쿼리의 결과 집합을 정렬합니다.

GROUP BY

GROUP BY expression [, ...]

GROUP BY 절은 쿼리의 그룹화 열을 식별합니다. 집계 표현식과 함께 사용됩니다.

HAVING

HAVING boolean-expression

HAVING 절은 GROUP BY 절에서 생성된 그룹 행을 필터링합니다.

SUB SELECT

SELECT column1, column2 FROM table1 WHERE column3 IN (SELECT column4 FROM table2);

다른 SELECT 문에 포함된 SELECT 문입니다.

JOIN

SELECT column1, column2 FROM table1 JOIN table2 ON table1.column1 = table2.column1;

INNER JOIN

SELECT columns FROM table1 INNER JOIN table2 ON table1.column = table2.column;

는 조인 조건과 일치하는 두 테이블의 모든 행을 INNER JOIN 반환합니다.

UNION

query { UNION [ ALL ] } another_query

UNION산자는 두 인수의 집합 조합을 계산하여 결과 집합에서 중복 레코드를 자동으로 제거합니다.