Package | Description |
---|---|
gudusoft.gsqlparser |
Provides the class
TGSqlParser necessary to create a SQL Parser and the classes a SQL Parser uses
internally to handle different SQL dialects. |
gudusoft.gsqlparser.nodes |
Provides the classes represents various SQL query parse tree node.
|
gudusoft.gsqlparser.resolver | |
gudusoft.gsqlparser.stmt |
Provides the classes represent various SQL statements.
|
Modifier and Type | Field and Description |
---|---|
protected ArrayList<TAttributeNode> |
TCustomSqlStatement.relationAttributes |
Modifier and Type | Method and Description |
---|---|
ArrayList<TAttributeNode> |
TAttributeNode.getAccompaniedAttributeNodes() |
ArrayList<TAttributeNode> |
TCustomSqlStatement.getAttributes() |
ArrayList<TAttributeNode> |
IRelation.getAttributes()
每个 relation 包含的 attributes
当它为 base table 时,这些 attributes 的来源有三种可能
1.
|
Modifier and Type | Method and Description |
---|---|
static boolean |
TAttributeNode.addNodeToList(TAttributeNode node,
ArrayList<TAttributeNode> list) |
Modifier and Type | Method and Description |
---|---|
static boolean |
TAttributeNode.addAllNodesToList(ArrayList<TAttributeNode> nodes,
ArrayList<TAttributeNode> list) |
static boolean |
TAttributeNode.addAllNodesToList(ArrayList<TAttributeNode> nodes,
ArrayList<TAttributeNode> list) |
static boolean |
TAttributeNode.addNodeToList(TAttributeNode node,
ArrayList<TAttributeNode> list) |
Modifier and Type | Method and Description |
---|---|
TAttributeNode |
TObjectName.getSourceAttributeNode() |
Modifier and Type | Method and Description |
---|---|
ArrayList<TAttributeNode> |
TObjectName.getAttributeNodesDerivedFromFromClause()
这个属性只有当 column 为 * 时有效
当 column 为 * 时, 本属性包含该 * 展开后对应的 attributeNode 列表,来源是 FROM CLAUSE中的 tables, 在 resolve star column
时给本属性赋值, TStmtScope.resolve(TObjectName objectName)
当 table 有metadata或DDL给出了明确的字段时,每table个展开的 attributeNode 包含明确的字段名,such as t.c
当 table 没有 metadata 和 DDL 时,每table个只展开的 一个 attributeNode,内容为 t.*
|
ArrayList<TAttributeNode> |
TTable.getAttributes() |
ArrayList<TAttributeNode> |
TTableFunction.getAttributes() |
ArrayList<TAttributeNode> |
TFromClause.getAttributes() |
ArrayList<TAttributeNode> |
TJoinExpr.getAttributes() |
ArrayList<TAttributeNode> |
TPivotClause.getAttributes() |
Modifier and Type | Method and Description |
---|---|
void |
TTable.addAttribute(TAttributeNode node) |
void |
TObjectName.setSourceAttributeNode(TAttributeNode sourceAttributeNode) |
void |
TObjectName.setSourceTable2(TCustomSqlStatement sqlStatement,
TAttributeNode attributeNode,
TTable newSourceTable) |
Modifier and Type | Method and Description |
---|---|
TAttributeNode |
TColumnTableMatch.getAttributeNode() |
Constructor and Description |
---|
TColumnTableMatch(TAttributeNode n,
int p) |
Modifier and Type | Method and Description |
---|---|
ArrayList<TAttributeNode> |
TSelectSqlStatement.getAttributes()
在 sql script 中,和该 relation 关联的 attribute。
select a from t;
attribute a 就是 relation t 的 referenceAttribute, 如果没有 metadata and ddl,
relation t 的 getAttributes() 应该可以推断出包含 a, 但 t 是否还包含其他的 attribute 就无从得知。
|