feat: support `Select Into` by KKould · Pull Request #141 · KipData/KiteSQL

What problem does this PR solve?

  • optimize HashJoin implementation
  • support Select Into
EXPLAIN SELECT A INTO TABLE_E111_01_013 FROM TABLE_E111_01_011

+--------------------------------------------------------+
| PLAN                                                   |
+========================================================+
| Insert table_e111_01_013, Is Overwrite: false [Insert] |
|   Projection [table_e111_01_011.a] [Project]           |
|     Scan table_e111_01_011 -> [id, a] [SeqScan]        |
+--------------------------------------------------------+

Tips: I tried to implement Semi/Anti Join, but I didn’t have any good ideas

Code changes

  • Has Rust code change
  • Has CI related scripts change

Check List

Tests

  • Unit test
  • Integration test
  • Manual test (add detailed scripts or steps below)
  • No code

Side effects

  • Performance regression: Consumes more CPU
  • Performance regression: Consumes more Memory
  • Breaking backward compatibility

Note for reviewer