aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/coreSQLiteStudio/selectresolver.h
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@unit193.net>2021-12-17 07:06:30 -0500
committerLibravatarUnit 193 <unit193@unit193.net>2021-12-17 07:06:30 -0500
commit1fdc150116cad39aae5c5da407c3312b47a59e3a (patch)
tree123c79a4d7ad2d45781ba03ce939f7539fb428d8 /SQLiteStudio3/coreSQLiteStudio/selectresolver.h
parentfeda8a7db8d1d7c5439aa8f8feef7cc0dd2b59a0 (diff)
New upstream version 3.3.3+dfsg1.upstream/3.3.3+dfsg1
Diffstat (limited to 'SQLiteStudio3/coreSQLiteStudio/selectresolver.h')
-rw-r--r--SQLiteStudio3/coreSQLiteStudio/selectresolver.h9
1 files changed, 7 insertions, 2 deletions
diff --git a/SQLiteStudio3/coreSQLiteStudio/selectresolver.h b/SQLiteStudio3/coreSQLiteStudio/selectresolver.h
index 92924ea..cb93d65 100644
--- a/SQLiteStudio3/coreSQLiteStudio/selectresolver.h
+++ b/SQLiteStudio3/coreSQLiteStudio/selectresolver.h
@@ -3,7 +3,6 @@
#include "parser/ast/sqliteselect.h"
#include "common/bistrhash.h"
-#include "dialect.h"
#include "expectedtoken.h"
#include "parser/ast/sqlitewith.h"
#include <QString>
@@ -41,6 +40,12 @@ class SchemaResolver;
* Result column like "table.*" will produce one or more column
* objects from this class.
*
+ * In case of CTE (Common Table Expression, aka WITH statement)
+ * the columns resolved from CTE will by of type COLUMN
+ * and will have FROM_CTE flag set. Such columns will have
+ * displayName and tableAlias populated, while database, table
+ * and column attributes may or may not be populated.
+ *
* There's one unsupported case: When the select has a subselect
* in "FROM" clause and that subselect is actually a multi-core
* select (with UNIONs), then columns produced from such source
@@ -204,6 +209,7 @@ class API_EXPORT SelectResolver
QList<Column> resolveJoinSource(SqliteSelect::Core::JoinSource* joinSrc);
QList<Column> resolveSingleSource(SqliteSelect::Core::SingleSource* joinSrc);
+ QList<Column> resolveCteColumns(SqliteSelect::Core::SingleSource* joinSrc);
QList<Column> resolveTableFunctionColumns(SqliteSelect::Core::SingleSource* joinSrc);
QList<Column> resolveSingleSourceSubSelect(SqliteSelect::Core::SingleSource* joinSrc);
QList<Column> resolveOtherSource(SqliteSelect::Core::JoinSourceOther *otherSrc);
@@ -217,7 +223,6 @@ class API_EXPORT SelectResolver
void markDistinctColumns();
void markCompoundColumns();
- void markCteColumns(QList<Column>* columnList = nullptr);
void markGroupedColumns();
void fixColumnNames();
void markCurrentColumnsWithFlag(Flag flag, QList<Column>* columnList = nullptr);