|
| groupFuncBase * | clone () |
| |
| void | doCalc (const row_ptr &row, int index) |
| |
| void | doInit (const fielddefs *fdinfo) |
| |
| virtual void | doReset () |
| |
| void | init (const fielddefs *fdinfo) |
| |
| virtual void | initResultVariable (int index) |
| |
| virtual numeric_type | numericResult (int groupIndex) const |
| |
| void | operator() (const row_ptr &row, int index, bool insert) |
| |
| ushort_td | resultLen () const |
| |
| uchar_td | resultType () const |
| |
| unsigned char * | stringResult (int groupIndex) const |
| |
| | query () |
| |
| | query (const query &r) |
| |
| virtual | ~query () |
| |
| template<class T > |
| query & | and_ (const _TCHAR *name, const _TCHAR *qlogic, T value) |
| |
| template<class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 , class T7 > |
| query & | in (const T0 kv0, const T1 kv1, const T2 kv2, const T3 kv3, const T4 kv4, const T5 kv5, const T6 kv6, const T7 kv7) |
| |
| template<class T0 , class T1 , class T2 , class T3 , class T4 , class T5 , class T6 > |
| query & | in (const T0 kv0, const T1 kv1, const T2 kv2, const T3 kv3, const T4 kv4, const T5 kv5, const T6 kv6) |
| |
| template<class T0 , class T1 , class T2 , class T3 , class T4 , class T5 > |
| query & | in (const T0 kv0, const T1 kv1, const T2 kv2, const T3 kv3, const T4 kv4, const T5 kv5) |
| |
| template<class T0 , class T1 , class T2 , class T3 , class T4 > |
| query & | in (const T0 kv0, const T1 kv1, const T2 kv2, const T3 kv3, const T4 kv4) |
| |
| template<class T0 , class T1 , class T2 , class T3 > |
| query & | in (const T0 kv0, const T1 kv1, const T2 kv2, const T3 kv3) |
| |
| template<class T0 , class T1 , class T2 > |
| query & | in (const T0 kv0, const T1 kv1, const T2 kv2) |
| |
| template<class T0 , class T1 > |
| query & | in (const T0 kv0, const T1 kv1) |
| |
| template<class T0 > |
| query & | in (const T0 kv0) |
| |
| template<class T > |
| query & | or_ (const _TCHAR *name, const _TCHAR *qlogic, T value) |
| |
| query & | reset () |
| |
| query & | select (const _TCHAR *name, const _TCHAR *name1=NULL, const _TCHAR *name2=NULL, const _TCHAR *name3=NULL, const _TCHAR *name4=NULL, const _TCHAR *name5=NULL, const _TCHAR *name6=NULL, const _TCHAR *name7=NULL, const _TCHAR *name8=NULL, const _TCHAR *name9=NULL, const _TCHAR *name10=NULL) |
| |
| template<class T > |
| query & | where (const _TCHAR *name, const _TCHAR *qlogic, T value) |
| |
const std::vector
< std::_tstring > & | getSeekKeyValues () const |
| |
| const std::vector< keyValuePtr > & | getSeekValuesPtr () const |
| |
const std::vector
< std::_tstring > & | getSelects () const |
| |
const std::vector
< std::_tstring > & | getWheres () const |
| |
| | queryBase () |
| |
| | queryBase (const queryBase &r) |
| |
| virtual | ~queryBase () |
| |
| void | addField (const _TCHAR *name) |
| |
| void | addLogic (const _TCHAR *name, const _TCHAR *logic, const _TCHAR *value) |
| |
| void | addLogic (const _TCHAR *combine, const _TCHAR *name, const _TCHAR *logic, const _TCHAR *value) |
| |
| void | addSeekBookmark (bookmark_td &bm, ushort_td len, bool reset=false) |
| |
| void | addSeekKeyValue (const _TCHAR *value, bool reset=false) |
| |
| void | addSeekKeyValuePtr (const void *value, ushort_td len, short typeStr, bool reset=false) |
| |
| queryBase & | all () |
| |
| queryBase & | bookmarkAlso (bool v) |
| |
| void | clearSeekKeyValues () |
| |
| void | clearSelectFields () |
| |
| queryBase & | direction (table::eFindType v) |
| |
| table::eFindType | getDirection () const |
| |
| int | getJoinKeySize () const |
| |
| int | getLimit () const |
| |
| eOptimize | getOptimize () const |
| |
| int | getReject () const |
| |
| const _TCHAR * | getSelect (short index) const |
| |
| const _TCHAR * | getWhereToken (short index) const |
| |
| bool | isAll () const |
| |
| bool | isBookmarkAlso () const |
| |
| bool | isSeekByBookmarks () const |
| |
| bool | isStopAtLimit () const |
| |
| queryBase & | joinKeySize (int v) |
| |
| queryBase & | limit (int v) |
| |
| queryBase & | operator= (const queryBase &r) |
| |
| queryBase & | optimize (eOptimize v) |
| |
| queryBase & | queryString (const _TCHAR *str, bool autoEscape=false) |
| |
| queryBase & | reject (int v) |
| |
| void | release () |
| |
| void | reserveSeekKeyValuePtrSize (size_t v) |
| |
| void | reserveSeekKeyValueSize (size_t v) |
| |
| void | reset () |
| |
| void | reverseAliasName (const _TCHAR *alias, const _TCHAR *src) |
| |
| short | selectCount () const |
| |
| void | setWhereToken (short index, const _TCHAR *v) |
| |
| queryBase & | stopAtLimit (bool v) |
| |
| const _TCHAR * | toString () const |
| |
| short | whereTokens () const |
| |
グルーピング Lastクラス
グルーピング時にグループごと最後のレコードの値を返します。
結果はdouble型のデータが返されます。
このクラスのインスタンスを groupQuery::addFunction() に渡して使用します。
以下のサンプルは、categoryごとに最後のレコードの値を求めます。 value列にセットされます。
fieldNames fns;
fns.keyField("value");
last last1(fns);
groupQuery gq;
gq.addFunction(&min1).keyField("category");
recordset.groupBy(gq);