aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/coreSQLiteStudio/selectresolver.h
diff options
context:
space:
mode:
Diffstat (limited to 'SQLiteStudio3/coreSQLiteStudio/selectresolver.h')
-rw-r--r--SQLiteStudio3/coreSQLiteStudio/selectresolver.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/SQLiteStudio3/coreSQLiteStudio/selectresolver.h b/SQLiteStudio3/coreSQLiteStudio/selectresolver.h
index 4213d73..1edfcb9 100644
--- a/SQLiteStudio3/coreSQLiteStudio/selectresolver.h
+++ b/SQLiteStudio3/coreSQLiteStudio/selectresolver.h
@@ -109,6 +109,7 @@ class API_EXPORT SelectResolver
QString alias;
QString tableAlias;
QString displayName;
+ bool aliasDefinedInSubQuery = false;
int flags = 0;
SqliteSelect::Core::ResultColumn* originalColumn = nullptr;
@@ -120,6 +121,9 @@ class API_EXPORT SelectResolver
SelectResolver(Db* db, const QString &originalQuery, const BiStrHash& dbNameToAttach);
~SelectResolver();
+ QList<Column> resolveColumnsFromFirstCore();
+ QList<QList<Column> > resolveColumns();
+
QList<Column> resolve(SqliteSelect::Core* selectCore);
QList<QList<Column> > resolve(SqliteSelect* select);
@@ -212,6 +216,7 @@ class API_EXPORT SelectResolver
QStringList getTableColumns(const QString& database, const QString& table, const QString &alias);
void applySubSelectAlias(QList<Column>& columns, const QString& alias);
QString resolveDatabase(const QString& database);
+ bool parseOriginalQuery();
void markDistinctColumns();
void markCompoundColumns();
@@ -224,6 +229,7 @@ class API_EXPORT SelectResolver
Db* db = nullptr;
QString query;
+ SqliteSelectPtr originalQueryParsed;
/**
* @brief Database name to attach name map.