1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- (
- (let config (DataSource 'config))
- (let list1 (AsList
- (AsStruct '('key1 (Just (Int32 '1))) '('value1 (Just (String 'A))))
- (AsStruct '('key1 (Just (Int32 '4))) '('value1 (Just (String 'C))))
- (AsStruct '('key1 (Just (Int32 '4))) '('value1 (Just (String 'D))))
- (AsStruct '('key1 (Nothing (OptionalType (DataType 'Int32)))) '('value1 (Just (String 'E))))
- (AsStruct '('key1 (Nothing (OptionalType (DataType 'Int32)))) '('value1 (Just (String 'F))))
- (AsStruct '('key1 (Nothing (OptionalType (DataType 'Int32)))) '('value1 (Just (String 'G))))
- ))
- (let list2 (AsList
- (AsStruct '('key2 (Just (Uint64 '2))) '('value2 (Just (String 'U))))
- (AsStruct '('key2 (Just (Uint64 '4))) '('value2 (Just (String 'Y))))
- (AsStruct '('key2 (Just (Uint64 '4))) '('value2 (Just (String 'W))))
- (AsStruct '('key2 (Nothing (OptionalType (DataType 'Uint64)))) '('value2 (Just (String 'P))))
- (AsStruct '('key2 (Nothing (OptionalType (DataType 'Uint64)))) '('value2 (Just (String 'Q))))
- (AsStruct '('key2 (Nothing (OptionalType (DataType 'Uint64)))) '('value2 (Just (String 'R))))
- ))
- (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)
- )
|