Class StringIndexOf5Method

java.lang.Object
org.datanucleus.store.rdbms.sql.method.StringIndexOf5Method
All Implemented Interfaces:
SQLMethod

public class StringIndexOf5Method extends Object implements SQLMethod
Method for evaluating {strExpr1}.indexOf(strExpr2[,pos]) for PostgreSQL. Note that this will not work if there is subsequent addition/subtraction of this value, but PostgreSQL doesn't have a simple function for this. If pos is not specified then returns a NumericExpression equating to
STRPOS(strExpr1, strExpr2, numExpr1+1)-1
otherwise returns
 CASE WHEN (STRPOS(SUBSTR(STR_FIELD, START_POS)) > 0) 
   THEN (STRPOS(SUBSTR(STR_FIELD, START_POS), STR) -1 + START_POS)
 ELSE
   -1
 
  • Constructor Details

    • StringIndexOf5Method

      public StringIndexOf5Method()
  • Method Details

    • getExpression

      public SQLExpression getExpression(SQLStatement stmt, SQLExpression expr, List<SQLExpression> args)
      Description copied from interface: SQLMethod
      Return the expression for this SQL function.
      Specified by:
      getExpression in interface SQLMethod
      Parameters:
      stmt - SQLStatement that this expression is for
      expr - The expression that it is invoked on
      args - Arguments passed in
      Returns:
      The SQL expression using the SQL function