diff --git a/.vscode/settings.json b/.vscode/settings.json index ec30c88..9c2d689 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -69,6 +69,7 @@ "thread": "cpp", "numeric": "cpp", "stack": "cpp", - "list": "cpp" + "list": "cpp", + "variant": "cpp" } } \ No newline at end of file diff --git a/usql/CMakeLists.txt b/usql/CMakeLists.txt deleted file mode 100644 index 745b7aa..0000000 --- a/usql/CMakeLists.txt +++ /dev/null @@ -1,21 +0,0 @@ -cmake_minimum_required(VERSION 3.0) - -set(CMAKE_CXX_STANDARD 17) -set(CMAKE_CXX_STANDARD_REQUIRED ON) -set(CMAKE_CXX_EXTENSIONS OFF) - -set(CMAKE_OSX_DEPLOYMENT_TARGET "10.14") - - -project(usql) - -set(PROJECT_NAME usql) - -set(SOURCE - exception.cpp lexer.cpp parser.cpp usql.cpp main.cpp table.cpp table.h row.cpp row.h csvreader.cpp csvreader.h ml_date.cpp) - -add_executable(${PROJECT_NAME} ${SOURCE}) - -target_link_libraries(${PROJECT_NAME} stdc++ m) - -target_compile_options(usql PRIVATE -g) diff --git a/usql/Readme.md b/usql/Readme.md index b0d6821..08a5e9d 100644 --- a/usql/Readme.md +++ b/usql/Readme.md @@ -1,7 +1,9 @@ - ### TODO +- escape " in save csv +- is null | is not null - coalesce, date functions now, add_date; string functions rtrim, ltrim, rpad, lpad; math function round - add pipe | concatenation +- add support for 1_000_000 numbers - support for order by, offset, limit (allow column name in order by, validate) - support for uniqueue indexes (primary key) @@ -9,6 +11,7 @@ - support for joining - add count min and max functions, eg aggregate functions +- use string_to_double and string_to_long (from Table) everywhere - add const wherever should be -- PERF in Row::Row(const Row &other), could be more efficient (memory and cpu) +- use static methods where posible - use references where pointer cannot be nullptr