Return the bylist for a compute row.
BYTE *dbbylist(dbproc, computeid, size) DBPROCESS *dbproc; int computeid; int *size;
A pointer to the DBPROCESS structure that provides the connection for a particular front-end/server process. It contains all the information that DB-Library uses to manage communications and data between the front end and server.
The ID that identifies the particular compute row of interest. A SQL select statement may have multiple compute clauses, each of which returns a separate compute row. The computeid corresponding to the first compute clause in a select is 1. The computeid is returned by dbnextrow or dbgetrow.
A pointer to an integer, which dbbylist sets to the number of elements in the bylist.
A pointer to an array of bytes containing the numbers of the columns that compose the bylist for the specified compute. The array of BYTEs is part of the DBPROCESS, so you must not free it. If the computeid is out of range, NULL is returned.
Call dbcolname to derive the name of a column from its number.
The size of the array is returned in the size parameter. A size of 0 indicates that either there is no bylist for this particular compute or the computeid is out of range.
dbbylist returns the bylist for a compute row. (A select statement’s compute clause may contain the keyword by, followed by a list of columns. This list, known as the “bylist,” divides the results into subgroups, based on changing values in the specified columns. The compute clause’s row aggregate is applied to each subgroup, generating a compute row for each subgroup.)
dbresults must return SUCCEED before the application calls this routine.
Assume the following command has been executed:
select dept, name, year, sales from employee
order by dept, name, year
compute count(name) by dept,name
The call dbbylist (dbproc, 1, &size) sets size to 2, because there are two items in the bylist. It returns a pointer to an array of two BYTEs, which contain the values 1 and 2, indicating that the bylist is composed of columns 1 and 2 from the select list.
dbadata, dbadlen, dbaltlen, dbalttype, dbcolname, dbgetrow, dbnextrow