ladybird/Userland/Libraries/LibSQL/AST
Jan de Visser 3425730294 LibSQL: Implement table joins
This patch introduces table joins. It uses a pretty dumb algorithm-
starting with a singleton '__unity__' row consisting of a single boolean
value, a cartesian product of all tables in the 'FROM' clause is built.
This cartesian product is then filtered through the 'WHERE' clause,
again without any smarts just using brute force.

This patch required a bunch of busy work to allow for example the
ColumnNameExpression having to deal with multiple tables potentially
having columns with the same name.
2021-11-10 14:47:49 +01:00
..
AST.h LibSQL: Add current statement to the ExecutionContext 2021-11-10 14:47:49 +01:00
CreateSchema.cpp LibSQL+SQLServer: Bare bones INSERT and SELECT statements 2021-08-21 22:03:30 +02:00
CreateTable.cpp LibSQL+SQLServer: Bare bones INSERT and SELECT statements 2021-08-21 22:03:30 +02:00
Expression.cpp LibSQL: Implement table joins 2021-11-10 14:47:49 +01:00
Insert.cpp LibSQL: Add better error handling to evaluate and execute methods 2021-10-25 12:59:42 +02:00
Lexer.cpp LibSQL: Make lexer and parser more standard SQL compliant 2021-06-24 00:36:53 +02:00
Lexer.h LibSQL: Make lexer and parser more standard SQL compliant 2021-06-24 00:36:53 +02:00
Parser.cpp Everywhere: Prevent risky implicit casts of (Nonnull)RefPtr 2021-09-03 23:20:23 +02:00
Parser.h LibSQL: Replace Optional<NonnullRefPtr<T>> with RefPtr<T> 2021-09-03 15:36:51 +02:00
Select.cpp LibSQL: Implement table joins 2021-11-10 14:47:49 +01:00
Statement.cpp LibSQL: Add current statement to the ExecutionContext 2021-11-10 14:47:49 +01:00
SyntaxHighlighter.cpp LibSQL: Make lexer and parser more standard SQL compliant 2021-06-24 00:36:53 +02:00
SyntaxHighlighter.h LibSQL: Move Lexer and Parser machinery to AST directory 2021-06-24 00:36:53 +02:00
Token.cpp LibSQL: Move Lexer and Parser machinery to AST directory 2021-06-24 00:36:53 +02:00
Token.h LibSQL: Invent statement execution machinery and CREATE SCHEMA statement 2021-07-08 17:55:59 +04:30