public virtual void AnalyzeSummarize() { if (analyzeTableColumnAffinities) { foreach (DbTable t in tables.Values) { t.FindAffinities(); t.AnalyzeAffinities(); } } if (rankTables) { QDict <string, DbTable> rankList = new QDict <string, DbTable>(QListSort.Descending); QList <string> list = new QList <string>(QListSort.Descending); foreach (DbTable t in tables.Values) { rankList.Add(t.name, t); t.affinities.Add("rowCount", t.rowCount); if (t.references.Count > 0) { t.affinities.Add("references", t.references.Count); } } RankTablesByAffinity("references", 5, 7); RankTablesByAffinity("important", 5, 3); RankTablesByAffinity("descriptive", 5, 3); RankTablesByAffinity("label", 5, 3); //RankTablesByAffinity("quantity", 5, 2); RankTablesByAffinity("rowCount", 5, 2); foreach (DbTable t in tables.Values) { rankList.SetPosition(t.objectName, Convert.ToInt32(1000 * t.importance)); } Log("table rank"); foreach (string nam in rankList.Keys) { Log(" " + nam); } } }
public SelectColumnParser(Select s, QDict <DbTable, Token> c) { select = s; candidateTables = c; tokens = select.GetTokensWithin(null); }