Condividi tramite


WITH (Analisi di flusso di Azure)

Specifica un set di risultati denominato temporaneo a cui può fare riferimento una clausola FROM nella query. Questo elemento viene definito nell'ambito di esecuzione di una singola istruzione SELECT.

Nota

La clausola WITH ha un uso speciale per quanto riguarda la scalabilità orizzontale delle query. Per altre informazioni, vedere Ridimensionare i processi di Analisi di flusso di Azure

Sintassi

WITH   
  
<result_set_name1> AS  
  ( SELECT_query_definition1 ),  
  
[<result_set_name2> AS  
  ( SELECT_query_definition2 )  
[...n]  ]  
  

Argomenti

result_set_name

Nome dell'elemento result-set temporaneo a cui può fare riferimento una clausola FROM di un'istruzione SELECT. Il nome deve essere diverso dal nome di eventuali altri elementi result_set_name definiti nell'ambito della query.

SELECT_query_definition

Specifica un'istruzione SELECT il cui set di risultati popola l'elemento result_set_name.

Esempio

WITH   
NormalReadings AS  
(  
  SELECT *  
  FROM Sensor  
  WHERE Reading < 100 AND Reading > 0  
),  
Averages AS  
(  
  SELECT SensorId, AVG(Reading) as AvgNormalReading  
  FROM NormalReadings  
  GROUP BY SensorId, TumblingWindow(minute, 1)  
),  
BadAverages AS  
(  
  SELECT *  
  FROM Averages  
  WHERE AvgNormalReadings < 10  
)  
  
SELECT * INTO outputAlerts FROM BadAverages  
SELECT * INTO outputLog FROM NormalReadings