Package org.h2.index

Class DualIndex

    • Constructor Detail

      • DualIndex

        public DualIndex​(DualTable table)
    • Method Detail

      • find

        public Cursor find​(SessionLocal session,
                           SearchRow first,
                           SearchRow last)
        Description copied from class: Index
        Find a row or a list of rows and create a cursor to iterate over the result.
        Specified by:
        find in class Index
        Parameters:
        session - the session
        first - the first row, or null for no limit
        last - the last row, or null for no limit
        Returns:
        the cursor to iterate over the results
      • getCost

        public double getCost​(SessionLocal session,
                              int[] masks,
                              TableFilter[] filters,
                              int filter,
                              SortOrder sortOrder,
                              AllColumnsForPlan allColumnsSet)
        Description copied from class: Index
        Estimate the cost to search for rows given the search mask. There is one element per column in the search mask. For possible search masks, see IndexCondition.
        Specified by:
        getCost in class Index
        Parameters:
        session - the session
        masks - per-column comparison bit masks, null means 'always false', see constants in IndexCondition
        filters - all joined table filters
        filter - the current table filter index
        sortOrder - the sort order
        allColumnsSet - the set of all columns
        Returns:
        the estimated cost
      • getCreateSQL

        public java.lang.String getCreateSQL()
        Description copied from class: DbObject
        Construct the CREATE ... SQL statement for this object.
        Overrides:
        getCreateSQL in class Index
        Returns:
        the SQL statement
      • canGetFirstOrLast

        public boolean canGetFirstOrLast()
        Description copied from class: Index
        Check if the index can directly look up the lowest or highest value of a column.
        Overrides:
        canGetFirstOrLast in class Index
        Returns:
        true if it can
      • findFirstOrLast

        public Cursor findFirstOrLast​(SessionLocal session,
                                      boolean first)
        Description copied from class: Index
        Find the first (or last) value of this index. The cursor returned is positioned on the correct row, or on null if no row has been found.
        Overrides:
        findFirstOrLast in class Index
        Parameters:
        session - the session
        first - true if the first (lowest for ascending indexes) or last value should be returned
        Returns:
        a cursor (never null)
      • getPlanSQL

        public java.lang.String getPlanSQL()
        Description copied from class: Index
        Get the message to show in a EXPLAIN statement.
        Overrides:
        getPlanSQL in class Index
        Returns:
        the plan