Package org.h2.index

Class DualIndex

All Implemented Interfaces:
HasSQL

public class DualIndex extends VirtualTableIndex
An index for the DUAL table.
  • Constructor Details

    • DualIndex

      public DualIndex(DualTable table)
  • Method Details

    • 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 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 String getPlanSQL()
      Description copied from class: Index
      Get the message to show in a EXPLAIN statement.
      Overrides:
      getPlanSQL in class Index
      Returns:
      the plan