У меня есть два потока, определенных каждый из topi c, в котором JSON сообщения публикуются примерно так:
{"payload": {"some_id": "123"}}
Их соответствующие потоки определены следующим образом:
CREATE STREAM mystream
(payload STRUCT <someid varchar>)
WITH (kafka_topic='mytopic', value_format='JSON')
Когда я пытаюсь объединить два потока вместе:
SELECT
s.payload->some_id,
o.payload->other_id
FROM mystream s
LEFT JOIN otherstream o ON s.payload->some_id = o.payload->other_id;
я получаю следующую ошибку:
Invalid comparison expression 'S.PAYLOAD->SOME_ID'
in join '(S.PAYLOAD->SOME_ID = O.PAYLOAD->OTHER_ID)'.
Joins must only contain a field comparison.
Разве невозможно объединить два потока на основе структуры поле? Нужно ли сначала публиковать sh поток, который выравнивает каждый исходный поток, прежде чем я смогу выполнить JOIN?