关于 H2DB 的好,我个人表示无语。

关于 H2DB 的好,我个人表示无语。
                一个好软件,会让人觉得赏心悦目
                 会让人心旷神怡
                 会开心
                 会……

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);

        }

    }



看着太舒服了。

你可能感兴趣的:(关于 H2DB 的好,我个人表示无语。)