It looks this was changed recently.  Saw this in an earlier post on the mail
list.  You recommend using aliasing to control the names.

So, my question is, how do I get the alias of the SUM(Flows) parameter in
the select clause, so that I can match it up with a column from the returned
table?

I want to preserve the order of the columns in the select clause.

Cheers,

Teryl


On Thu, Jun 24, 2010 at 2:05 PM, Teryl Taylor <[email protected]>wrote:

> Hi John,
>
> I'm getting some weird behaviour in the latest build, that I didn't seen in
> the release of 1.1.6.    I'm trying to do a  select and then a groupby...
>
> The select looks something like this:  select v4sIP, v4dIP, Flows, time
> where Protocol=6 AND v4sIP=192.168.20.163
>
> And the group by is like this:
>
> v4sIP, v4diP, SUM(Flows)
>
>
> Now off of the group by table, that I create,  I try to get the column
> names to print them out by doing the following:
>
> ibis::table* gb = sel1->groupby(sGroupByClause.c_str());
>         if(gb == 0)
>         {
>             cout << "GROUP BY Clause: " << sGroupByClause << " failed." <<
> endl;
>         }
>         printf("The groupby clause is %s\n", sGroupByClause.c_str());
>         ibis::selectClause gc(sGroupByClause.c_str());
>
> ibis::table::stringList col = gb->columnNames();
>     ibis::table::typeList types = gb->columnTypes();
>     hash_map<std::string, ibis::TYPE_T> typeMap;
>     for(int i = 0; i < gb->nColumns(); i++)
>     {
>         typeMap[string(col[i])] = types[i];
>         printf("Column name: %s, Type: %d\n", col[i], types[i]);
>     }
>
>
> In the latest version this prints out as:
>
> Column name: count0, Type: 7
> Column name: sum3, Type: 11
> Column name: v4diP, Type: 7
> Column name: v4sIP, Type: 7
>
>
> Under the old version 1.16...the names are:
>
> the column name is COUNT(*)
> the column name is SUM(Flows)
> the column name is v4dIP
> the column name is v4sIP
>
>
> So my question is, what's changed that has caused the difference in the
> naming convention?  I'm trying to use the select clause to pick out columns
> from the table in the order they were presented in the select clause.
> However, the column name in the table, and the column name in the select
> clause are now different, so I can't do that.
>
> What's my best option?
>
> Cheers,
>
> Teryl
>
>
_______________________________________________
FastBit-users mailing list
[email protected]
https://hpcrdm.lbl.gov/cgi-bin/mailman/listinfo/fastbit-users

Reply via email to