日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

正則表達式

更新時間:

InfluxQL支持在以下場景中使用正則表達式:

  • SELECT子句中的field key和tag key。
  • FROM子句中的measurement。
  • WHERE子句中的tag value和字符串類型的field value。
  • GROUP BY子句中的tag key。

目前,InfluxQL不支持在WHERE子句、數據庫和保留策略中使用正則表達式去匹配非字符串類型的field value。

注釋:正則表達式比較比字符串比較更加消耗計算資源;帶有正則表達式的查詢比那些不帶的性能要低一些。

語法

  1. SELECT /<regular_expression_field_key>/ FROM /<regular_expression_measurement>/ WHERE [<tag_key> <operator> /<regular_expression_tag_value>/ | <field_key> <operator> /<regular_expression_field_value>/] GROUP BY /<regular_expression_tag_key>/

語法描述

正則表達式被字符/包圍,并使用Golang的正則表達式語法

支持的操作符:

=~ 匹配
!~ 不匹配

示例

SELECT子句中使用正則表達式指定field key和tag key

  1. > SELECT /l/ FROM "h2o_feet" LIMIT 1
  2. name: h2o_feet
  3. time level description location water_level
  4. ---- ----------------- -------- -----------
  5. 2015-08-18T00:00:00Z between 6 and 9 feet coyote_creek 8.12

該查詢返回所有包含字符l的field key和tag key。請注意,在SELECT子句中的正則表達式必須至少匹配一個field key,才能返回與正則表達式匹配的tag key所對應的結果。

目前,沒有語法可以區分SELECT子句中field key的正則表達式和tag key的正則表達式,不支持語法/<regular_expression>/::[field | tag]

SELECT子句中使用正則表達式指定帶函數的field key

  1. > SELECT DISTINCT(/level/) FROM "h2o_feet" WHERE "location" = 'santa_monica' AND time >= '2015-08-18T00:00:00.000000000Z' AND time <= '2015-08-18T00:12:00Z'
  2. name: h2o_feet
  3. time distinct_level description distinct_water_level
  4. ---- -------------------------- --------------------
  5. 2015-08-18T00:00:00Z below 3 feet 2.064
  6. 2015-08-18T00:00:00Z 2.116
  7. 2015-08-18T00:00:00Z 2.028

該查詢使用了一個InfluxQL函數,返回每個包含level的field key所對應的去重后的field value。

FROM子句中使用正則表達式指定measurement

  1. > SELECT MEAN("degrees") FROM /temperature/
  2. name: average_temperature
  3. time mean
  4. ---- ----
  5. 1970-01-01T00:00:00Z 79.98472932232272
  6. name: h2o_temperature
  7. time mean
  8. ---- ----
  9. 1970-01-01T00:00:00Z 64.98872722506226

該查詢使用了一個InfluxQL函數,計算數據庫NOAA_water_database中每個名字包含temperature的measurement的degrees的平均值。

WHERE子句中使用正則表達式指定tag value

  1. > SELECT MEAN(water_level) FROM "h2o_feet" WHERE "location" =~ /[m]/ AND "water_level" > 3
  2. name: h2o_feet
  3. time mean
  4. ---- ----
  5. 1970-01-01T00:00:00Z 4.47155532049926

該查詢使用了一個InfluxQL函數,計算滿足條件的water_level的平均值,需滿足的條件是:location的tag value包含m并且water_level大于3。

WHERE子句中使用正則表達式指定沒有值的tag

  1. > SELECT * FROM "h2o_feet" WHERE "location" !~ /./
  2. >

該查詢從measurement h2o_feet中選擇數據,這些數據需滿足條件:tag location中不包含數據。因為數據庫NOAA_water_database里面每個數據點都有location對應的tag value,所以該查詢不返回任何結果。

不使用正則表達式也可以執行相同的查詢,請查閱FAQ章節獲得更多相關信息。

WHERE子句中使用正則表達式指定具有值的tag

  1. > SELECT MEAN("water_level") FROM "h2o_feet" WHERE "location" =~ /./
  2. name: h2o_feet
  3. time mean
  4. ---- ----
  5. 1970-01-01T00:00:00Z 4.442107025822523

該查詢使用了一個InfluxQL函數,計算滿足條件的water_level的平均值,需滿足的條件是:location具有tag value。

WHERE子句中使用正則表達式指定field value

  1. > SELECT MEAN("water_level") FROM "h2o_feet" WHERE "location" = 'santa_monica' AND "level description" =~ /between/
  2. name: h2o_feet
  3. time mean
  4. ---- ----
  5. 1970-01-01T00:00:00Z 4.47155532049926

該查詢使用了一個InfluxQL函數,計算滿足條件的water_level的平均值,需滿足的條件是:level description的field value包含between

GROUP BY子句中使用正則表達式指定tag key

  1. > SELECT FIRST("index") FROM "h2o_quality" GROUP BY /l/
  2. name: h2o_quality
  3. tags: location=coyote_creek
  4. time first
  5. ---- -----
  6. 2015-08-18T00:00:00Z 41
  7. name: h2o_quality
  8. tags: location=santa_monica
  9. time first
  10. ---- -----
  11. 2015-08-18T00:00:00Z 99

該查詢使用了一個InfluxQL函數,查詢每個tag key包含l的tag所對應的index的第一個值。


InfluxDB? is a trademark registered by InfluxData, which is not affiliated with, and does not endorse, TSDB for InfluxDB?.