Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Unterstützte Klauseln
Die SELECT Anweisung wird verwendet, um Daten aus einer oder mehreren Ansichten abzurufen. AWS IoT SiteWise unterstützt die INNER JOIN Operationen JOIN und.
Ansichten werden mit einer expliziten JOIN Syntax oder mit kommagetrennten Notationen in der Klausel verknüpft. FROM
Beispiel
Eine allgemeine Aussage: 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 ]
Beispiel
Eine SELECT-Anweisung mit den verschiedenen Klauseln:
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;
Anmerkung
Eine implizite Anweisung JOIN kombiniert zwei oder mehr verschiedene Tabellen, ohne das JOIN Schlüsselwort zu verwenden, das auf dem internen AWS IoT SiteWise Schema basiert. Dies entspricht der Ausführung einer JOIN Verknüpfung der property_id Felder asset_id und zwischen Metadaten- und Rohdatentabellen. Dieses Muster SiteWise ermöglicht es, beliebige Metadatenfilter in der Abfrage beim Abrufen aus Rohdatentabellen so zu nutzen, dass insgesamt weniger Daten gescannt werden.
Beispiel einer Abfrage:
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'
Im obigen Beispiel werden nur Daten aus der Asset-Eigenschaft gescannt, die zu den angegebenen Metadatennamen gehören.
Beispiel eines weniger optimierten Äquivalents der obigen Abfrage:
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'
Eine Erklärung jeder Klausel und ihrer Beschreibung ist unten aufgeführt:
|
Klausel |
Signature |
Beschreibung |
|---|---|---|
|
|
|
Diese Klausel begrenzt die Ergebnismenge auf die angegebene Anzahl von Zeilen. Sie können
|
|
|
|
Die Anmerkung Wenn Sie in einer Aggregation in der
|
|
|
|
Die |
|
|
|
Die |
|
|
|
Eine |
|
|
|
|
|
|
|
An |
|
|
|
Der |