1234567891011121314151617181920212223242526272829303132333435363738394041 |
- (
- (let config (DataSource 'config))
- (let list1 (AsList
- (AsStruct '('key1 (Int32 '1)) '('value1 (String 'A)))
- (AsStruct '('key1 (Int32 '4)) '('value1 (String 'C)))
- (AsStruct '('key1 (Int32 '4)) '('value1 (String 'D)))
- ))
- (let list2 (AsList
- (AsStruct '('key2 (Uint64 '2)) '('value2 (String 'U)))
- (AsStruct '('key2 (Uint64 '4)) '('value2 (String 'Y)))
- (AsStruct '('key2 (Uint64 '4)) '('value2 (String 'W)))
- ))
- (let joinInner (EquiJoin '(list1 'a) '(list2 'b) '('Inner 'a 'b '('a 'key1) '('b 'key2) '()) '()))
- (let joinLeft (EquiJoin '(list1 'a) '(list2 'b) '('Left 'a 'b '('a 'key1) '('b 'key2) '()) '()))
- (let joinRight (EquiJoin '(list1 'a) '(list2 'b) '('Right 'a 'b '('a 'key1) '('b 'key2) '()) '()))
- (let joinFull (EquiJoin '(list1 'a) '(list2 'b) '('Full 'a 'b '('a 'key1) '('b 'key2) '()) '()))
- (let joinLeftOnly (EquiJoin '(list1 'a) '(list2 'b) '('LeftOnly 'a 'b '('a 'key1) '('b 'key2) '()) '()))
- (let joinRightOnly (EquiJoin '(list1 'a) '(list2 'b) '('RightOnly 'a 'b '('a 'key1) '('b 'key2) '()) '()))
- (let joinExclusion (EquiJoin '(list1 'a) '(list2 'b) '('Exclusion 'a 'b '('a 'key1) '('b 'key2) '()) '()))
- (let joinLeftSemi (EquiJoin '(list1 'a) '(list2 'b) '('LeftSemi 'a 'b '('a 'key1) '('b 'key2) '()) '()))
- (let joinRightSemi (EquiJoin '(list1 'a) '(list2 'b) '('RightSemi 'a 'b '('a 'key1) '('b 'key2) '()) '()))
- (let joinCross (EquiJoin '(list1 'a) '(list2 'b) '('Cross 'a 'b '() '() '()) '()))
- (let res_sink (DataSink 'result))
- (let world (Write! world res_sink (Key) joinInner '('('type))))
- (let world (Write! world res_sink (Key) joinLeft '('('type))))
- (let world (Write! world res_sink (Key) joinRight '('('type))))
- (let world (Write! world res_sink (Key) joinFull '('('type))))
- (let world (Write! world res_sink (Key) joinLeftOnly '('('type))))
- (let world (Write! world res_sink (Key) joinRightOnly '('('type))))
- (let world (Write! world res_sink (Key) joinExclusion '('('type))))
- (let world (Write! world res_sink (Key) joinLeftSemi '('('type))))
- (let world (Write! world res_sink (Key) joinRightSemi '('('type))))
- (let world (Write! world res_sink (Key) joinCross '('('type))))
- (let world (Commit! world res_sink))
- (return world)
- )
|