Datum getWciBrowseValueParameterQuery(PG_FUNCTION_ARGS) { struct WciReadParameterCollection p; parseReadParameters(& p, fcinfo); const char * query = build_query(& p, GridTable, OutputGid, "valueparametername, valueunitname, count(*)", "GROUP BY valueparametername, valueunitname"); text * ret = CStringGetTextP(query); PG_RETURN_TEXT_P(ret); }
Datum getWciBrowseLevelParameterQuery(PG_FUNCTION_ARGS) { struct WciReadParameterCollection p; parseReadParameters(& p, fcinfo); const char * query = build_query(& p, GridTable, OutputGid, "levelparametername, levelunitname, min(levelfrom), max(levelto), count(*)", "GROUP BY levelparametername, levelunitname"); text * ret = CStringGetTextP(query); PG_RETURN_TEXT_P(ret); }
Datum getWciBrowsePlaceQuery(PG_FUNCTION_ARGS) { struct WciReadParameterCollection p; parseReadParameters(& p, fcinfo); const char * query = build_query(& p, GridTable, OutputGid, "placename, min(referencetime), max(referencetime), count(*)", "GROUP BY placename"); text * ret = CStringGetTextP(query); PG_RETURN_TEXT_P(ret); }
Datum getWciBrowseDataVersionQuery(PG_FUNCTION_ARGS) { struct WciReadParameterCollection p; parseReadParameters(& p, fcinfo); const char * query = build_query(& p, GridTable, OutputGid, "dataversion, count(*)", "GROUP BY 1 ORDER BY 1"); text * ret = CStringGetTextP(query); PG_RETURN_TEXT_P(ret); }