Currently KSQL only supports single joins in a statement. We should add the ability to join between multiple objects in a single query.
This works:
select \
d.DocumentName, d.FileExtension, dv.ViewedAt \
from documentViewStream dv \
inner join documentTable d \
on dv.DocumentID = d.DocumentID;
But it would be better if we supported;
select \
u.UserName, d.DocumentName, d.FileExtension, dv.ViewedAt \
from documentViewStream dv \
inner join documentTable d \
on dv.DocumentID = d.DocumentID;
inner join userTable u \
on uv.UserID = dv.UserID;
The above query currently throws mismatched input 'inner' expecting ';' (#1612 for improving the message)
In this example it would be a STREAM-TABLE-TABLE join. Currently the workaround would be to resolve the joins separately in multiple queries.
I was wondering if this issue has been fixed? If not is there is a timeline on this? thank you
@rmoff I have the same scenario. We are getting into KAFKA streams and we have multiple table joins scenario. Any idea on when this will be addressed?
+1
This would be really great to have multi-joins. Otherwise i have to spam kafka with additional intermediate topics which don't have meanin on it's own and brings headache to our team responsible for kafka cluster :)
+1
+1 desperately
+1
reducing the need to create intermediately topics will help in our adoption
+1
+1. Is this functionality available?
+1
We're starting to work on this. 鉂わ笍
In which version of ksqldb will this be published?
@alenpesikan 0.9.0, which will be out in a couple of days.
For people not following release version changes by confluent: what does 0.9.0 mean if we have 5.4.1 now?
Here's a quick explanation. We published a version compatibility matrix on Confluent's site. We're going to add a page to ksqldb.io to make the relationship extra clear - it's admittedly a little confusing now.
Most helpful comment
We're starting to work on this. 鉂わ笍