マイバティスでNULL値のデータをどのように取得するか
MyBatisでは、要素を使用してクエリ条件がnull値かどうかを判定し、それに応じたクエリを実行できます。
nullの場合はnameでレコードを検索する場合のステップ:
- Mapper.xml ファイルで、次のようにクエリ文を書いて下さい:
<select id="selectNullValues" resultType="yourResultType">
SELECT *
FROM yourTable
WHERE name IS NULL
</select>
- 対応する Mapper インターフェースでメソッドを定義します。
public interface YourMapper {
List<YourResultType> selectNullValues();
}
- マッパ インタフェースに対応した XML ファイルで、メソッドに SQL ステートメントを関連付けます(以下を参照)。
<mapper namespace="yourMapperNamespace">
<select id="selectNullValues" resultType="yourResultType">
SELECT *
FROM yourTable
WHERE name IS NULL
</select>
</mapper>
- このメソッドはアプリケーションの中でこのように呼び出されます。
YourMapper yourMapper = sqlSession.getMapper(YourMapper.class);
List<YourResultType> nullValues = yourMapper.selectNullValues();
NULL な name フィールドを持つデータを取得できます。実際の状況に応じて、対応するテーブル名、フィールド名、戻り値タイプなどを置き換えてください。