|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.h2.tools.MultiDimension
public class MultiDimension
A tool to help an application execute multi-dimensional range queries. The algorithm used is database independent, the only requirement is that the engine supports a range index (for example b-tree).
Method Summary | |
---|---|
int |
deinterleave(long scalar,
int dimensions,
int dim)
Gets one of the original multi-dimensional values from a scalar value. |
java.lang.String |
generatePreparedQuery(java.lang.String table,
java.lang.String scalarColumn,
java.lang.String[] columns)
Generates an optimized multi-dimensional range query. |
java.lang.String |
generateQuery(java.lang.String table,
java.lang.String scalarColumn,
java.lang.String[] columns,
int[] min,
int[] max)
Generates an optimized multi-dimensional range query. |
static MultiDimension |
getInstance()
Get the singleton. |
java.sql.ResultSet |
getResult(java.sql.PreparedStatement prep,
int[] min,
int[] max)
Executes a prepared query that was generated using generatePreparedQuery. |
long |
interleave(int[] values)
Convert the multi-dimensional value into a one-dimensional (scalar) value. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Method Detail |
---|
public static MultiDimension getInstance()
public long interleave(int[] values)
values
- the multi-dimensional value
public int deinterleave(long scalar, int dimensions, int dim)
scalar
- the scalar valuedimensions
- the number of dimensionsdim
- the dimension of the returned value (starting from 0)
public java.lang.String generatePreparedQuery(java.lang.String table, java.lang.String scalarColumn, java.lang.String[] columns)
table
- the table namecolumns
- the list of columnsscalarColumn
- the column name of the computed scalar column
public java.sql.ResultSet getResult(java.sql.PreparedStatement prep, int[] min, int[] max) throws java.sql.SQLException
prep
- the prepared statementmin
- the lower valuesmax
- the upper values
java.sql.SQLException
public java.lang.String generateQuery(java.lang.String table, java.lang.String scalarColumn, java.lang.String[] columns, int[] min, int[] max)
table
- the table namecolumns
- the list of columnsmin
- the lower valuesmax
- the upper valuesscalarColumn
- the column name of the computed scalar column
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |