隨筆 - 175  文章 - 202  trackbacks - 0
          <2011年10月>
          2526272829301
          2345678
          9101112131415
          16171819202122
          23242526272829
          303112345

          第一個Blog,記錄哈哈的生活

          常用鏈接

          留言簿(16)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          收藏夾

          Java links

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

                          一個好軟件,會讓人覺得賞心悅目
                           會讓人心曠神怡
                           會開心
                           會……

          H2DB 就是這樣的一個好軟件,就一個感覺----舒服!


          比如:group by sort 的實現


              private void queryGroupSorted(int columnCount, ResultTarget result) {

                  int rowNumber = 0;

                  setCurrentRowNumber(0);

                  Value[] previousKeyValues = null;

                  while (topTableFilter.next()) {

                      setCurrentRowNumber(rowNumber + 1);

                      if (condition == null || Boolean.TRUE.equals(condition.getBooleanValue(session))) {

                          rowNumber++;

                          Value[] keyValues = new Value[groupIndex.length];

                          // update group

                          for (int i = 0; i < groupIndex.length; i++) {

                              int idx = groupIndex[i];

                              Expression expr = expressions.get(idx);

                              keyValues[i] = expr.getValue(session);

                          }


                          if (previousKeyValues == null) {

                              previousKeyValues = keyValues;

                              currentGroup = New.hashMap();

                          } else if (!Arrays.equals(previousKeyValues, keyValues)) {

                              addGroupSortedRow(previousKeyValues, columnCount, result);

                              previousKeyValues = keyValues;

                              currentGroup = New.hashMap();

                          }

                          currentGroupRowId++;


                          for (int i = 0; i < columnCount; i++) {

                              if (groupByExpression == null || !groupByExpression[i]) {

                                  Expression expr = expressions.get(i);

                                  expr.updateAggregate(session);

                              }

                          }

                      }

                  }

                  if (previousKeyValues != null) {

                      addGroupSortedRow(previousKeyValues, columnCount, result);

                  }

              }



          看著太舒服了。

          posted on 2011-10-12 13:52 哈哈的日子 閱讀(261) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 东港市| 深泽县| 南涧| 泸水县| 舒城县| 澄迈县| 杭锦旗| 时尚| 容城县| 广水市| 泸州市| 温宿县| 西乡县| 桃园县| 陇南市| 宝坻区| 大理市| 商河县| 黑河市| 庆城县| 琼海市| 枣阳市| 公主岭市| 凤翔县| 济阳县| 静宁县| 盐源县| 新闻| 邹城市| 车致| 兴化市| 安龙县| 永宁县| 保定市| 淅川县| 新蔡县| 昭通市| 罗江县| 安仁县| 乐昌市| 新乡县|