Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
✅Eventstream prostředků infrastruktury Azure Stream Analytics ✅
Příkaz CREATE TABLE slouží k definování schématu datové části událostí přicházejících do Azure Stream Analytics. To uživateli umožňuje explicitně definovat datové typy jednotlivých pojmenovaných sloupců pro datovou část příchozích událostí. To informuje úlohu vstupního schématu a zabrání odvození typu.
Poznámka:
Porovnání různých možností dostupných pro převod typů najdete v tématu Přetypování dat.
Je důležité si uvědomit, že funkce CREATE TABLE ve skutečnosti nevytvoří žádnou tabulku. CREATE TABLE definuje pouze datový typ každého sloupce v datové části vstupního aliasu. Tento vstupní alias je ten, který byl vytvořen v části Přidat vstup na portálu. V případě absence takové deklarace kompilátor odvodí datový typ sloupců.
Vpřípaděch Řádky v chybě se přesunou do diagnostických protokolů s následující klasifikací:
"Type": "DataError",
"DataErrorType": "InputDeserializerError.InvalidData",
"BriefMessage": "Could not deserialize the input event(s) from resource ... . Some possible reasons: 1) Malformed events 2) Input source configured with incorrect serialization format",
"ErrorCode": "InputDeserializationError",
"ErrorCategory": "DataError"
To znamená, že funkci CREATE TABLE nelze použít k převodu typů mezi původním formátem (CSV, JSON.)) a novými. CREATE TABLE lze použít pouze k explicitnímu informování kompilátoru o očekávaných typech, takže odchylky lze ze streamu odebrat. Pokud je potřeba provést převod, měli byste ho provést v pozdějším kroku dotazu pomocí funkce CAST nebo TRY_CAST.
Syntaxe
CREATE TABLE
table_name
( column_name <data_type> [ ,...n ] );
Argumenty
název_tabulky
Název vstupního datového proudu, ze kterého data pocházejí. Tento název musí odpovídat vstupnímu aliasu vytvořenému v části Přidat vstup na portálu Azure Stream Analytics.
název sloupce
Název sloupce v datové části příchozí události. Pokud v datové části nejsou žádné názvy sloupců, pak výchozí názvy sloupců1, sloupec2, ... jsou generovány systémem a měly by být použity zde v příkazu CREATE TABLE.
typ dat
Datové typy podporované službou Azure Stream Analytics. Viz datové typy.
Příklady
S následujícím vstupním schématem (JSON):
{
"TollId":1,
"EntryTime":"2014-09-10T12:11:00.0000000Z",
"LicensePlate":"NJB 1006",
"State":"CT",
"Make":"Ford",
"Model":"Focus",
"VehicleType":1,
"VehicleWeight":0,
"Toll":4.5,
"Tag":678912345
}
Můžeme použít následující příkaz CREATE TABLE:
CREATE TABLE Entry (
TollId bigint,
EntryTime datetime,
LicensePlate nvarchar(max),
State nvarchar(max),
Make nvarchar(max),
Model nvarchar(max),
VehicleType bigint,
VehicleWeight float,
Toll float,
Tag bigint
);
SELECT
DATEADD(hour,-1,System.Timestamp()) AS WindowStart,
System.Timestamp AS WindowEnd,
TollId,
SUM(Toll) AS TollTotal -- guaranteed to be a float
INTO MyOutput
FROM Entry TIMESTAMP BY EntryTime -- guaranteed to be a timestamp
GROUP BY TollId, Tumbling(hour,1)