当前位置: 首页>>代码示例>>Java>>正文


Java Type.compareToTypeRange方法代码示例

本文整理汇总了Java中org.hsqldb.types.Type.compareToTypeRange方法的典型用法代码示例。如果您正苦于以下问题:Java Type.compareToTypeRange方法的具体用法?Java Type.compareToTypeRange怎么用?Java Type.compareToTypeRange使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.hsqldb.types.Type的用法示例。


在下文中一共展示了Type.compareToTypeRange方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getFirstRowMulti

import org.hsqldb.types.Type; //导入方法依赖的package包/类
/**
 * Uses multiple EQUAL expressions
 */
private void getFirstRowMulti() {

    boolean convertible = true;
    Object[] currentJoinData =
        new Object[rangeVar.rangeIndex.getVisibleColumns()];

    for (int i = 0; i < rangeVar.multiColumnCount; i++) {
        Type valueType =
            rangeVar.findFirstExpressions[i].getRightNode()
                .getDataType();
        Type targetType =
            rangeVar.findFirstExpressions[i].getLeftNode()
                .getDataType();
        Object value =
            rangeVar.findFirstExpressions[i].getRightNode().getValue(
                session);

        if (targetType.compareToTypeRange(value) != 0) {
            convertible = false;

            break;
        }

        currentJoinData[i] = targetType.convertToType(session, value,
                valueType);
    }

    it = convertible
         ? rangeVar.rangeIndex.findFirstRow(session, store,
             currentJoinData, rangeVar.multiColumnCount)
         : rangeVar.rangeIndex.emptyIterator();
}
 
开发者ID:s-store,项目名称:sstore-soft,代码行数:36,代码来源:RangeVariable.java

示例2: getFirstRow

import org.hsqldb.types.Type; //导入方法依赖的package包/类
/**
 */
private void getFirstRow() {

    Object value =
        rangeVar.indexCondition.getRightNode().getValue(session);
    Type valueType =
        rangeVar.indexCondition.getRightNode().getDataType();
    Type targetType =
        rangeVar.indexCondition.getLeftNode().getDataType();
    int exprType = rangeVar.indexCondition.getType();
    int range    = 0;

    if (targetType != valueType) {
        range = targetType.compareToTypeRange(value);
    }

    if (range == 0) {
        value = targetType.convertToType(session, value, valueType);
        it = rangeVar.rangeIndex.findFirstRow(session, store, value,
                                              exprType);
    } else if (range < 0) {
        switch (exprType) {

            case OpTypes.GREATER_EQUAL :
            case OpTypes.GREATER :
                it = rangeVar.rangeIndex.findFirstRowNotNull(session,
                        store);
                break;

            default :
                it = rangeVar.rangeIndex.emptyIterator();
        }
    } else {
        switch (exprType) {

            case OpTypes.SMALLER_EQUAL :
            case OpTypes.SMALLER :
                it = rangeVar.rangeIndex.findFirstRowNotNull(session,
                        store);
                break;

            default :
                it = rangeVar.rangeIndex.emptyIterator();
        }
    }

    return;
}
 
开发者ID:s-store,项目名称:sstore-soft,代码行数:50,代码来源:RangeVariable.java


注:本文中的org.hsqldb.types.Type.compareToTypeRange方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。