Aracılığıyla paylaş


TABLO OLUŞTUR

✅ Azure Stream Analytics ✅ Fabric Olay Akışı

CREATE TABLE deyimi, Azure Stream Analytics'e gelen olayların yükünün şemasını tanımlamak için kullanılır. Bu, kullanıcının gelen olayların yükü için her adlandırılmış sütunun veri türlerini açıkça tanımlamasına olanak tanır. Bu, işi giriş şeması hakkında bilgilendirecek ve tür çıkarımını önleyecektir.

Uyarı

Tür dönüştürme için kullanılabilecek farklı seçenekleri karşılaştırmak için bkz. Veri dönüştürme

CREATE TABLE'un aslında herhangi bir tablo oluşturmadığını anlamak önemlidir. CREATE TABLE yalnızca giriş diğer adının yükündeki her sütunun veri türünü tanımlar. Bu giriş diğer adı, portalın "Giriş Ekle" bölümünde oluşturulmuş olan diğer addır. Böyle bir bildirimin olmaması durumunda derleyici sütunların veri türünü çıkaracaktır.

Dönüştürme hataları olması durumunda CREATE TABLE, satırları akıştan bırakır. Hatadaki satırlar aşağıdaki sınıflandırmaya sahip tanılama günlüklerine taşınır:

"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"

Bu, CREATE TABLE'un türleri özgün biçim (CSV, JSON..) ve yeni biçimler arasında dönüştürmek için kullanılamayacağı anlamına gelir. CREATE TABLE yalnızca derleyiciye beklenecek türleri açıkça bildirmek için kullanılabilir, bu nedenle sapmalar akıştan kaldırılabilir. Dönüştürme yapılması gerekiyorsa, CAST veya TRY_CAST kullanılarak daha sonraki bir sorgu adımında yapılmalıdır.

Sözdizimi

CREATE TABLE   
    table_name   
    ( column_name <data_type> [ ,...n ] );  
  

Tartışmalar

  • tablo_adı

    Verilerin geldiği giriş akışının adı. Bu adın Azure Stream Analytics portalının "Giriş Ekle" bölümünde oluşturulan giriş diğer adıyla eşleşmesi gerekir.

  • sütun_adı

    Gelen olayın yükündeki sütunun adı. Yükte sütun adı yoksa, sütun1, sütun2, ... sistem tarafından oluşturulur ve burada CREATE TABLE deyiminde kullanılmalıdır.

  • veri_tipi

    Azure Stream Analytics tarafından desteklenen veri türleri. Bkz. Veri Türleri.

Örnekler

Aşağıdaki giriş şemasıyla (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
  }

Aşağıdaki CREATE TABLE deyimini kullanabiliriz:

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)