java sql根据查询结果,转换成自己想要的数据

pojo:

@Data
public class Student {

    private int id;

    private String name;

    private int age;

    private String sex;
    
}

场景:数据库里面字段sex数据类型是bit,想在java中用String表示。

想法:将查询出来的sql结果,将字段sex由bit数据类型(数据库中是bit,java中用boolean表示)转换成String数据类型。

解决办法:

select id,name,case when sex=0 then '男' else '女' end as sex from student

注意: case when 使用结束后,一定要加上as xxx(需要的成员对象名称),如果不加的话会是null,如下图:

 @Select("select id,name,case when sex=0 then '男' else '女' end 
 from student where id=#{id}")

 Student findById(int id);

 查询结果:
 Student(id=1, name=zbz, age=0, sex=null)

加上as xxx的结果图如下:

 @Select("select id,name,case when sex=0 then '男' else '女' end as sex
 from student where id=#{id}")

 Student findById(int id);

 查询结果:
 Student(id=1, name=zbz, age=0, sex='男')

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章