2017-01-30 115 views
1

我有一個MySQL表,其中存在重複值時更新現有記錄並插入新的使用「ON DUPLICATE KEY UPDATE」在某些列上存在新條目時記錄。在INFLUX DB中更新重複條目的現有記錄並插入新條目的記錄(類似於MySQL中的ON DUPLICATE KEY UPDATE)

INSERT INTO TestDB 
       (col_1, col_2, col_3, col_4) 
      VALUES 
       (val_1, val_2, val_3, val_4) 
      ON DUPLICATE KEY UPDATE 
       col_2 = VALUES(col_2), 
       col_3 = VALUES(col_3) 

現在,我需要influxdb也確切情況。但是我找不到任何與涌入相同的東西。

涌入測量將是這樣的

INSERT TestDB,col_1=val_1,col_2=val_2,col_3=val_3 col_4="val_4" 

與潮DB當前情況下,當我插入一個重複的記錄,它插入一個新的紀錄,顯然是一個新的時間戳,但我需要的,更新第一條記錄,如果它試圖插入重複值(帶有新時間戳),並且僅當val_2和val_3發生更改時插入新記錄。

那麼,在Influx DB中是否有一個'ON DUPLICATE KEY UPDATE'等同於實現相同結果?

注意:我正在使用本地計算機的influx命令行和管理頁面(使用8083端口)來插入和查詢測量結果。

+0

不幸的是,InfluxDB中尚不存在此功能。請打開[功能請求](https://github.com/influxdata/influxdb/issues/new)。 –

+0

關於此的一些信息:https://github.com/influxdata/influxdb/issues/2575#issuecomment-102071093 –

回答

0

如果插入到influx中的記錄中的所有標記(包括時間)無論字段是否不同,InfluxDB都會更新同一條記錄。

即,influx維護獨特標籤組合鍵