kafka ksql extract json feld 文字美元符号
kafka ksql extract json fleld literal dollar symbol
我有来自 mongo CDC 连接器的数据流,但问题是流密钥是 JSON 字符串的形式。
例如
{"id":"{ \"$oid\" : \"5bbb0c70cd0b9c06cf06c9c1\"}"}
我知道我可以使用 extractjsonfield 方法使用 jsonpath 提取数据,但是,我不知道如何提取我试过的文字美元符号:
$.id.$oid
$.id[$oid]
$.id.*
每次我收到空响应,有什么想法吗?
我猜你的问题与issue #1403有关。
您可以使用 [\" field_name \"]
来引用该列。例如,
SELECT EXTRACTJSONFIELD(test,'$[\"$oid\"]') FROM testing;
我在使用 Debezium MongoDB 连接器时遇到了同样的问题。
使用@Giorgos 指出的[\" field_name \"]
对我来说对ksqlDB 0.21.0
不起作用
相反 [\" field_name \"]
(单反斜杠)有效。
我有来自 mongo CDC 连接器的数据流,但问题是流密钥是 JSON 字符串的形式。
例如
{"id":"{ \"$oid\" : \"5bbb0c70cd0b9c06cf06c9c1\"}"}
我知道我可以使用 extractjsonfield 方法使用 jsonpath 提取数据,但是,我不知道如何提取我试过的文字美元符号:
$.id.$oid
$.id[$oid]
$.id.*
每次我收到空响应,有什么想法吗?
我猜你的问题与issue #1403有关。
您可以使用 [\" field_name \"]
来引用该列。例如,
SELECT EXTRACTJSONFIELD(test,'$[\"$oid\"]') FROM testing;
我在使用 Debezium MongoDB 连接器时遇到了同样的问题。
使用@Giorgos 指出的[\" field_name \"]
对我来说对ksqlDB 0.21.0
相反 [\" field_name \"]
(单反斜杠)有效。