return s;
}
public void merge()throws SQLException{
if (sqps.size() < 1)return;
SQLParser s = (SQLParser)sqps.remove(sqp.getTable());
if (s != null){
sqp.mergeAliases(s.getAliases());
Vector v2 = s.getOriginalSelectList();
sqp.setOriginalSelectList(v2);
}
//(sqp.getOriginalSelectList() + " SELECTSSS U 2b " + sqp.getSelectList());
String al = (String) sqp.getAliases().get(sqp.getTable());
if (al != null){
s = (SQLParser)sqps.remove(al);
if (s != null)
sqp.mergeAliases(s.getAliases());
}
if (sqps.size() > 0)
{
Hashtable h = sqp.getAliases();
Enumeration en1 = h.keys();
while (en1.hasMoreElements()){
String n = en1.nextElement().toString();
String nv = (String)h.get(n);
if (nv.equals(sqp.getTable()))
{
s = (SQLParser)sqps.remove(n);
if (s != null)
{
Hashtable v = s.getSelectAS();
Hashtable v2 = sqp.getSelectAS();
Enumeration en = v.keys();
String k = null;
while (en.hasMoreElements()){
k = en.nextElement().toString();
v2.put(k,v.get(k));
}
Vector vv = s.getSelectList();
Vector vv2 = sqp.getSelectList();
en = vv.elements();
String itm = null;
while (en.hasMoreElements()){
itm = en.nextElement().toString();
//(itm + " SELECTSSS U 2c " + sqp.getSelectList() + ":" + vv2.contains(itm) + s.getTable());
if (itm.endsWith(".*") )
{
vv2.remove(itm);
Vector fl = sqp.getJiqlTableInfo().getFieldList();
String an = itm.substring(0,itm.length() - 1);
for (int fct = 0;fct < fl.size();fct++){
itm = an + fl.elementAt(fct).toString();
addToTheSelectList(itm);
//(!addToTheSelectList(itm))
if (!vv2.contains(itm)){
vv2.add(itm);
}
}
}
else if(!addToTheSelectList(itm))
if (!vv2.contains(itm)){
vv2.add(itm);
}
}
sqp.updateSelects();
Vector v2b = s.getOriginalSelectList();
sqp.setOriginalSelectList(v2b);