=x columnName >= x N D
<=x columnName <= x N D
<>x columnName != x N A D
x:y columnName >= x AND columnName <= y N D
x..y columnName >= x AND columnName <= y N D
*x, x*, *x* columnName like %x, x%, %x% A
?x, x?, ?x?, x?? columnName =like _x, x_, _x_, x__ A
a|b columnName = a OR columnName = b N A D
>> columnName = (select max(columnName) from tabName) N A D
<< columnName = (select min(columnName) from tabName) N A D
O operador tem de ser o primeiro token encontrado no padrao. Outras
ocorrencias de um operador que nao seja no inicio do padrao, sao tratados
como fazendo parte do padrao.
Para especificar o caracter '*' ou '?' num padrao, deve ser usado o caracter
de escape'\', ou seja '\*' ou '\?'.
Por defeito se nao for especificado nenhum operador, e usado o operador '='.
Para procurar por nulos, deve ser usado apenas o operador '=' sem mais nada.
Para procurar por todos os que não são nulos, deve ser usado apenas o
operador '<>' sem mais nada.
- Version:
- $Revision: 1.9 $
- Author:
- pcarmo
|
Field Summary |
static java.lang.String |
EQUAL
Caracter que representa uma igualdade no padrao de pesquisa. |
static char |
ESCAPECHAR
Caracter usado para representar a barra de escape '\' num padrao de pesquisa. |
static java.lang.String |
GREATER
Caracter que representa 'maior' no padrao de pesquisa. |
static java.lang.String |
GREATERTHAN
Caracter que representa 'maior ou igual' no padrao de pesquisa. |
static java.lang.String |
HIGHEST
Caracter que representa 'maior de todos' no padrao de pesquisa. |
static java.lang.String |
LESS
Caracter que representa 'menor' no padrao de pesquisa. |
static java.lang.String |
LESSTHAN
Caracter que representa 'menor ou igual' no padrao de pesquisa. |
static java.lang.String |
LOWEST
Caracter que representa 'menor de todos' no padrao de pesquisa. |
static java.lang.String |
NOTEQUAL
Caracter que representa 'diferente' no padrao de pesquisa. |
static java.lang.String |
OR
Caracter que representa uma conjuncao no padrao de pesquisa. |
static java.lang.String |
RANGE
Caracter que representa um intervalo de valores no padrao de pesquisa. |
static java.lang.String |
RANGE2
Caracter que representa um intervalo de valores no padrao de pesquisa. |
static char |
SINGLEWILDCARD
Caracter usado para representar um qualquer caracter no padrao de pesquisa. |
static char |
WILDCARD
Caracter usado para representar uma qualquer string no padrao de pesquisa. |
|
Method Summary |
static java.lang.String |
build(SQLPattern pattern)
Constroi uma clausula de WHERE para uma query em SQL a partir de um
padrao de pesquisa.
|
static java.lang.String |
build(SQLPattern pattern,
boolean caseSensitive)
Constroi uma clausula de WHERE para uma query em SQL a partir de um
padrao de pesquisa. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
EQUAL
public static final java.lang.String EQUAL
- Caracter que representa uma igualdade no padrao de pesquisa.
- See Also:
- Constant Field Values
GREATER
public static final java.lang.String GREATER
- Caracter que representa 'maior' no padrao de pesquisa.
- See Also:
- Constant Field Values
LESS
public static final java.lang.String LESS
- Caracter que representa 'menor' no padrao de pesquisa.
- See Also:
- Constant Field Values
GREATERTHAN
public static final java.lang.String GREATERTHAN
- Caracter que representa 'maior ou igual' no padrao de pesquisa.
- See Also:
- Constant Field Values
LESSTHAN
public static final java.lang.String LESSTHAN
- Caracter que representa 'menor ou igual' no padrao de pesquisa.
- See Also:
- Constant Field Values
NOTEQUAL
public static final java.lang.String NOTEQUAL
- Caracter que representa 'diferente' no padrao de pesquisa.
- See Also:
- Constant Field Values
RANGE
public static final java.lang.String RANGE
- Caracter que representa um intervalo de valores no padrao de pesquisa.
- See Also:
- Constant Field Values
RANGE2
public static final java.lang.String RANGE2
- Caracter que representa um intervalo de valores no padrao de pesquisa.
- See Also:
- Constant Field Values
OR
public static final java.lang.String OR
- Caracter que representa uma conjuncao no padrao de pesquisa.
- See Also:
- Constant Field Values
HIGHEST
public static final java.lang.String HIGHEST
- Caracter que representa 'maior de todos' no padrao de pesquisa.
- See Also:
- Constant Field Values
LOWEST
public static final java.lang.String LOWEST
- Caracter que representa 'menor de todos' no padrao de pesquisa.
- See Also:
- Constant Field Values
WILDCARD
public static final char WILDCARD
- Caracter usado para representar uma qualquer string no padrao de pesquisa.
- See Also:
- Constant Field Values
SINGLEWILDCARD
public static final char SINGLEWILDCARD
- Caracter usado para representar um qualquer caracter no padrao de pesquisa.
- See Also:
- Constant Field Values
ESCAPECHAR
public static final char ESCAPECHAR
- Caracter usado para representar a barra de escape '\' num padrao de pesquisa.
- See Also:
- Constant Field Values
SQLPatternBuilder
public SQLPatternBuilder()
build
public static java.lang.String build(SQLPattern pattern,
boolean caseSensitive)
- Constroi uma clausula de WHERE para uma query em SQL a partir de um
padrao de pesquisa.
- Parameters:
pattern - O padrao de pesquisa.caseSensitive - Se for true a clausula de where e criada com a
funcao LOWER, para permitir realizar um pesquisa
case insensitive.
- Returns:
- Uma clausula de WHERE para uma query em SQL.
XXX : Acho que o tipo de campo nao esta a ser muito usado, verificar
isto. O tipo de operador encontrado devia ser validado com o tipo
de campo, por exemplo, se o campo e do tipo int e foi encontrado o
padrao '12345*' devia dar um erro em vez de devolver a clausula
"xpto like '12345%'.
build
public static java.lang.String build(SQLPattern pattern)
- Constroi uma clausula de WHERE para uma query em SQL a partir de um
padrao de pesquisa.
A clausula de pesquisa criada e case sensitive.
- Parameters:
pattern - O padrao de pesquisa.
- Returns:
- Uma clausula de WHERE para uma query em SQL.