Mybatisで不等号の書き方
Mybatisで不等号を使う場合の書き方の例です。
エラーが発生しないようにエスケープ処理をしています。
例えば、test_tableというテーブルのage列が指定した値より大きいレコードを取得する場合は、以下のように書きます。
( > をエスケープしています)
<select id="findByAgeGreaterThan" parameterType="int" resultType="testEntity"> SELECT * FROM test_table WHERE age > #{value} </select>
また、ageが指定した値未満の場合の例は次のようになります。
( < をエスケープしています)
<select id="findByAgeLessThan" parameterType="int" resultType="testEntity"> SELECT * FROM test_table WHERE age < #{value} </select>
ageが指定した値以上の場合や以下の場合は、以下のように書きます。
<select id="findByAgeGreaterThanOrEqual" parameterType="int" resultType="testEntity"> SELECT * FROM test_table WHERE age >= #{value} </select> <select id="findByAgeLessThanOrEqual" parameterType="int" resultType="testEntity"> SELECT * FROM test_table WHERE age <= #{value} </select>
このように、MybatisではSQLの不等号演算子を使って条件を指定できます。