[#907] Add missing Field.like(Field<T>), notLike(Field<T>) methods to overload the existing Field.like(T), notLike(T)

This commit is contained in:
Lukas Eder 2011-11-05 13:27:34 +00:00
parent 778c553319
commit 4dbf4dcd09
3 changed files with 33 additions and 2 deletions

View File

@ -6699,6 +6699,17 @@ public abstract class jOOQAbstractTest<
}
}
@Test
public void testLike() throws Exception {
Result<B> books =
create().selectFrom(TBook())
.where(TBook_TITLE().like("%a%"))
.and(TBook_TITLE().notLike(TBook_PUBLISHED_IN().cast(String.class)))
.fetch();
assertEquals(3, books.size());
}
@Test
public void testDual() throws Exception {
assertEquals(1, (int) create().selectOne().fetchOne(0, Integer.class));

View File

@ -1111,11 +1111,21 @@ public interface Field<T> extends NamedTypeProviderQueryPart<T>, AliasProvider<F
*/
Condition isFalse();
/**
* <code>this like value</code>
*/
Condition like(Field<T> value);
/**
* <code>this like value</code>
*/
Condition like(T value);
/**
* <code>this not like value</code>
*/
Condition notLike(Field<T> value);
/**
* <code>this not like value</code>
*/

View File

@ -692,12 +692,22 @@ abstract class AbstractField<T> extends AbstractNamedTypeProviderQueryPart<T> im
@Override
public final Condition like(T value) {
return new CompareCondition<T>(this, val(value), Comparator.LIKE);
return like(val(value));
}
@Override
public final Condition like(Field<T> value) {
return new CompareCondition<T>(this, nullSafe(value), Comparator.LIKE);
}
@Override
public final Condition notLike(T value) {
return new CompareCondition<T>(this, val(value), Comparator.NOT_LIKE);
return notLike(val(value));
}
@Override
public final Condition notLike(Field<T> value) {
return new CompareCondition<T>(this, nullSafe(value), Comparator.NOT_LIKE);
}
@Override