public class InferenceEvidence extends Object
Evidence is collected from various sources in the SQL statement: - Column references in WHERE clauses - JOIN conditions - SELECT list expressions - INSERT statements (column lists) - etc.
Each piece of evidence has a confidence weight that contributes to the overall inference confidence.
Example:
SELECT t1.* FROM t1 WHERE t1.id = 100
^^
Evidence: "id" exists in t1 (from WHERE clause, high confidence)
| Constructor and Description |
|---|
InferenceEvidence(String columnName,
String tableName,
EvidenceType evidenceType,
double confidence,
TParseTreeNode sourceNode,
String description) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
equals(Object obj) |
static InferenceEvidence |
fromInsertColumns(String columnName,
String tableName,
TParseTreeNode sourceNode)
Create evidence from INSERT statement column list.
|
static InferenceEvidence |
fromJoinCondition(String columnName,
String tableName,
TParseTreeNode sourceNode)
Create evidence from a JOIN condition.
|
static InferenceEvidence |
fromQualifiedReference(String columnName,
String tableName,
TParseTreeNode sourceNode)
Create evidence from a qualified column reference.
|
static InferenceEvidence |
fromSelectList(String columnName,
String tableName,
TParseTreeNode sourceNode)
Create evidence from SELECT list.
|
static InferenceEvidence |
fromUnqualifiedReference(String columnName,
String tableName,
TParseTreeNode sourceNode,
int tableCount)
Create evidence from an unqualified column reference.
|
static InferenceEvidence |
fromUpdateSet(String columnName,
String tableName,
TParseTreeNode sourceNode)
Create evidence from UPDATE statement.
|
String |
getColumnName() |
double |
getConfidence() |
String |
getDescription() |
EvidenceType |
getEvidenceType() |
TParseTreeNode |
getSourceNode() |
String |
getTableName() |
int |
hashCode() |
String |
toString() |
public InferenceEvidence(String columnName, String tableName, EvidenceType evidenceType, double confidence, TParseTreeNode sourceNode, String description)
public String getColumnName()
public String getTableName()
public EvidenceType getEvidenceType()
public double getConfidence()
public TParseTreeNode getSourceNode()
public String getDescription()
public static InferenceEvidence fromQualifiedReference(String columnName, String tableName, TParseTreeNode sourceNode)
public static InferenceEvidence fromUnqualifiedReference(String columnName, String tableName, TParseTreeNode sourceNode, int tableCount)
public static InferenceEvidence fromJoinCondition(String columnName, String tableName, TParseTreeNode sourceNode)
public static InferenceEvidence fromSelectList(String columnName, String tableName, TParseTreeNode sourceNode)
public static InferenceEvidence fromInsertColumns(String columnName, String tableName, TParseTreeNode sourceNode)
public static InferenceEvidence fromUpdateSet(String columnName, String tableName, TParseTreeNode sourceNode)