Class ResolutionResultImpl
Object
gudusoft.gsqlparser.resolver2.result.ResolutionResultImpl
- All Implemented Interfaces:
IResolutionResult
Default implementation of IResolutionResult.
Provides statement-centric query access based on ScopeBuildResult.
-
Constructor Summary
ConstructorsConstructorDescriptionResolutionResultImpl(ScopeBuildResult scopeBuildResult, TStatementList statements) -
Method Summary
Modifier and TypeMethodDescription获取所有 CTE 名称获取所有字段名(table.column 格式,全局去重)获取所有已解析的列(sourceTable != null)获取所有表名(全局去重) 适用于批量处理场景获取所有未解析的列(sourceTable == null)获取指定语句中涉及的所有列引用getColumnsForTable(TCustomSqlStatement stmt, TTable table) 获取关联到指定表的列getCTEs(TCustomSqlStatement stmt) 获取指定语句中的 CTE 定义获取指定语句中未解析的列(孤儿列) 即 sourceTable 为 null 的列getScope(TCustomSqlStatement stmt) 获取指定语句的 Scope 仅供高级用户使用,一般不需要直接访问 Scope获取解析统计信息getTables(TCustomSqlStatement stmt) 获取指定语句中涉及的所有表 默认过滤:排除 JOIN 容器,包含物理表getTables(TCustomSqlStatement stmt, TableFilterOptions options) 获取指定语句中涉及的所有表(带过滤选项)
-
Constructor Details
-
ResolutionResultImpl
-
-
Method Details
-
getScope
Description copied from interface:IResolutionResult获取指定语句的 Scope 仅供高级用户使用,一般不需要直接访问 Scope- Specified by:
getScopein interfaceIResolutionResult- Parameters:
stmt- SQL语句- Returns:
- 该语句对应的 Scope,如果不存在返回 null
-
getTables
Description copied from interface:IResolutionResult获取指定语句中涉及的所有表 默认过滤:排除 JOIN 容器,包含物理表- Specified by:
getTablesin interfaceIResolutionResult- Parameters:
stmt- SQL语句- Returns:
- 表列表
-
getTables
Description copied from interface:IResolutionResult获取指定语句中涉及的所有表(带过滤选项)- Specified by:
getTablesin interfaceIResolutionResult- Parameters:
stmt- SQL语句options- 过滤选项- Returns:
- 表列表
-
getColumns
Description copied from interface:IResolutionResult获取指定语句中涉及的所有列引用- Specified by:
getColumnsin interfaceIResolutionResult- Parameters:
stmt- SQL语句- Returns:
- 列列表
-
getColumnsForTable
Description copied from interface:IResolutionResult获取关联到指定表的列- Specified by:
getColumnsForTablein interfaceIResolutionResult- Parameters:
stmt- SQL语句table- 目标表- Returns:
- 关联到此表的列列表
-
getOrphanColumns
Description copied from interface:IResolutionResult获取指定语句中未解析的列(孤儿列) 即 sourceTable 为 null 的列- Specified by:
getOrphanColumnsin interfaceIResolutionResult- Parameters:
stmt- SQL语句- Returns:
- 孤儿列列表
-
getCTEs
Description copied from interface:IResolutionResult获取指定语句中的 CTE 定义- Specified by:
getCTEsin interfaceIResolutionResult- Parameters:
stmt- SQL语句(通常是包含 WITH 子句的 SELECT)- Returns:
- CTE 列表
-
getAllTableNames
Description copied from interface:IResolutionResult获取所有表名(全局去重) 适用于批量处理场景- Specified by:
getAllTableNamesin interfaceIResolutionResult- Returns:
- 所有表名集合
-
getAllFieldNames
Description copied from interface:IResolutionResult获取所有字段名(table.column 格式,全局去重)- Specified by:
getAllFieldNamesin interfaceIResolutionResult- Returns:
- 所有字段名集合
-
getAllCTENames
Description copied from interface:IResolutionResult获取所有 CTE 名称- Specified by:
getAllCTENamesin interfaceIResolutionResult- Returns:
- CTE 名称集合
-
getAllResolvedColumns
Description copied from interface:IResolutionResult获取所有已解析的列(sourceTable != null)- Specified by:
getAllResolvedColumnsin interfaceIResolutionResult- Returns:
- 已解析列列表
-
getAllUnresolvedColumns
Description copied from interface:IResolutionResult获取所有未解析的列(sourceTable == null)- Specified by:
getAllUnresolvedColumnsin interfaceIResolutionResult- Returns:
- 未解析列列表
-
getStatistics
Description copied from interface:IResolutionResult获取解析统计信息- Specified by:
getStatisticsin interfaceIResolutionResult- Returns:
- 统计信息 (使用 gudusoft.gsqlparser.resolver2.model.ResolutionStatistics)
-