EzJDBCで利用可能な比較演算子!
[追記]表の12番目に「動的に比較演算子を設定」するメソッドの説明を追記しました。
EzJDBCで利用可能な比較演算子について説明したいと思います。
現在利用可能な比較演算子は以下の11種類です。
比較演算子 | method | 補足 | |
1 | = | eq(値) | |
2 | != | ne(値) | |
3 | > | gt(値) | |
4 | >= | ge(値) | |
5 | < | lt(値) | |
6 | <= | le(値) | |
7 | IS NULL | isNull() | eq(null)の場合も同様 |
8 | IS NOT NULL | isNotNull() | ne(null)の場合も同様 |
9 | LIKE | like(%値%) | パターンマッチング(メタ文字は利用者が付加する) |
likeBegin(値) | 前方一致(メタ文字は自動セット) | ||
likeAfter(値) | 後方一致(メタ文字は自動セット) | ||
10 | IN | in(値,値...) | 比較値は可変長引数 |
11 | BETWEEN | between(値,値) | |
12 | 任意 | any("比較演算子",値,値...) | 比較演算子を動的に設定 |
上記以外に同一メソッド名で、比較値の後にbooleanを指定できるメソッドが11種類あります。
引数として指定するbooleanは、動的に抽出条件の対照とするか否かを指定する場合に利用します。
例...WHERE (取引先.住所 LIKE 'TOKYO%')を抽出条件に含めない場合
// 取引先.住所 LIKE 'TOKYO%'を抽出条件として含めない場合はfalseをセットします。
boolaen cd = false;
// テーブル情報インスタンスを生成
CUSTOMER _CS = new CUSTOMER();
// CUSTOMERテーブルを照会
Listlist = EzJDBC.from(_CS).where(_CS.ADDRESS.like("TOKYO%", cd))
.and(_CS.GENDER.eq("男"))
.find(Bl.class);
ちなみにちゃんとSQLは「SELECT ... FROM CUSTOMER CS WHERE CS.GENDER = '男'」と出力されますよ。
ちょーかんたんですね(^^)