跳至主要內容
Telemetry
資料品質 SQL查詢範例

分別統計感測器訊息送達次數與量測次數

用 SQL 查詢六筆虛構的感測器送達紀錄。網路重送會增加資料列,卻不會增加量測次數,因此依資料列計算的平均值會改變。

入門sensor_deliveries已審查 2026-09-24測試用 阿帕奇 DataFusion 45.2.0

審閱者 Telemetry產品團隊 上 . 我們檢查了 SQL 語法、必要的事件欄位、範例結果和查詢使用限制. 誰負責審查此頁面

問題已回答

感測器量測了六次,還是網路將四次量測送達了六次?

一次送達是一筆收到的事件。在這組虛構資料中,reading_id 識別一次實際量測。計數與取平均時,應選能回答問題的資料單位。

事件結構

查詢期望的欄位

欄位型別為什麼存在
reading_idUtf8虛構量測的識別碼。
measured_secondInt64練習開始後,感測器量測的秒數。
delivered_secondInt64練習開始後,網路訊息送達的秒數。
co2_ppmInt64虛構的 CO₂ 讀數,單位為 ppm;不能用於健康評估。
DataFusion SQL

複製查詢

sql
WITH per_reading AS (
  SELECT reading_id, MIN(co2_ppm) AS co2_ppm
  FROM sensor_deliveries
  GROUP BY reading_id
),
delivery_summary AS (
  SELECT COUNT(*) AS deliveries, AVG(co2_ppm) AS delivered_mean_ppm
  FROM sensor_deliveries
),
measurement_summary AS (
  SELECT COUNT(*) AS measurements, AVG(co2_ppm) AS measurement_mean_ppm
  FROM per_reading
)
SELECT deliveries, measurements, delivered_mean_ppm, measurement_mean_ppm
FROM delivery_summary CROSS JOIN measurement_summary;

此只讀查詢是針對空型別資料表計劃和執行的 阿帕奇 DataFusion 45.2.0。確定性樣本輸出是綜合的並單獨審查;根據您自己的資料驗證欄位型別、閾值和業務定義。 閱讀測試方法。

查詢結果

兩種統計單位,兩種平均值

六次送達對應四次量測。兩個平均值使用同一組虛構數值,卻回答不同問題。

deliveriesmeasurementsdelivered_mean_ppmmeasurement_mean_ppm
64700675

綜合範例輸出。在將其用於操作決策之前,針對您自己的事件架構和閾值執行查詢。

Two grains, two averages:來自 Count sensor deliveries and measurements separately 範例結果的合成 measurement_mean_ppm 值的靜態圖表
確定性範例輸出的可索引 SVG。下載它以獲取帶有歸屬的文章、操作手冊或設計評論。

重現範例

下載範例資料

JSON 包包含型別化事件契約, reproducible 輸入行、確切的 SQL、預期輸出、審閱註釋和引擎版本。 CSV 包含顯示的結果。

SQL 是如何工作的

  1. 1第一個 CTE 依 reading_id 將送達紀錄分組,因此 r4 的重送不會算成新量測。
  2. 2依送達資料列計算的平均值是 700 ppm;依四次量測計算的是 675 ppm。兩者都不一定是教室空氣的時間加權平均值。
  3. 3這裡可用 MIN,僅因同一 reading_id 的每筆虛構紀錄都有相同的 co2_ppm。替真實資料去重前,應檢查是否有衝突值。

需要檢查的邊界情況

  • 兩次不同的量測可能得到相同的 CO₂ 數值;AVG(DISTINCT co2_ppm) 會錯誤地將它們合併。
  • 真實的讀數 ID 可能在不同裝置間衝突,也可能在重新啟動後重複使用。分組真實事件前,應先定義量測識別規則。
  • 這組虛構 CO₂ 數值不能用於通風或健康決策。真實使用還須檢查校準、安裝位置、遺漏讀數和時間涵蓋範圍。

推薦儀表板

  • 表格:一次練習中的送達次數、量測次數和兩個平均值

警示指導

這組虛構教學資料不適用於真實的 CO₂ 警報。

讀取警示設定

設定此查詢需要的事件

相關埋點和指南

繼續分析

在你的事件上執行

建立資料表,調整欄位並儲存結果

免費開始,傳送結構化事件,並將查詢結果用作圖表、共享儀表板小工具或警示輸入。

獲取 API 金鑰