Mybatisで不等号の書き方

Mybatisで不等号の書き方

Mybatisで不等号を使う場合の書き方の例です。
エラーが発生しないようにエスケープ処理をしています。

例えば、test_tableというテーブルのage列が指定した値より大きいレコードを取得する場合は、以下のように書きます。
( > をエスケープしています)

<select id="findByAgeGreaterThan" parameterType="int" resultType="testEntity">
    SELECT * FROM test_table
    WHERE age &gt; #{value}
</select>

また、ageが指定した値未満の場合の例は次のようになります。
( < をエスケープしています)

<select id="findByAgeLessThan" parameterType="int" resultType="testEntity">
    SELECT * FROM test_table
    WHERE age &lt; #{value}
</select>

ageが指定した値以上の場合や以下の場合は、以下のように書きます。

<select id="findByAgeGreaterThanOrEqual" parameterType="int" resultType="testEntity">
    SELECT * FROM test_table
    WHERE age &gt;= #{value}
</select>

<select id="findByAgeLessThanOrEqual" parameterType="int" resultType="testEntity">
    SELECT * FROM test_table
    WHERE age &lt;= #{value}
</select>

このように、MybatisではSQLの不等号演算子を使って条件を指定できます。