Mybatis——oracle 的模糊查询 和 日期处理

第一种

1
<if test="AGTNAM !=null and AGTNAM !=''"> 2 <![CDATA[and AGTNAM like concat(concat('%',#{AGTNAM}),'%'))]]> 3 </if>
复制代码
第二种 
1
<select id="selectUserByName" parameterType="string" resultType="user"> 2 select * from user where username like '%${value}%' 3 </select>
备注:
${}可以接收简单类型值或pojo属性值,如果parameterType传输单个简单类型值,${}括号中只能是value,使用${}不能防止sql注入,但是有时用${}会非常方便
复制代码

 日期的处理 

1,数据库里存的是date 使用 insert 语句

1
insert  into  mytest_t  values (1, '张三' ,to_date( '2011-09-09' , 'yyyy-MM-dd' ))
1
insert  into  mytest_t  values (1, '张三' ,to_date( '20110909' , 'yyyyMMdd' ))

2,数据库里面存的时varchar2  直接插入

insert into mytest_t values(1,'zhangdan','2011-09-09')

3,查询 ,数据库存的是varchar2

日期输出的格式是由 to_char 决定的
select
to_char(to_date(birthday01,'yyyy-mm-dd'),'yyyy-MM-dd') from MYTEST_T 输出是:yyyy-MM-dd
select to_char(to_date(birthday01,'yyyy-mm-dd'),'yyyyMMdd') from MYTEST_T 输出是:yyyyMMdd

4,查询 ,数据库存的是date

1
2
select  to_char(birthday, 'yyyy-MM-dd' from  MYTEST_T             格式 是由to_char 决定的
select  to_char(birthday, 'yyyyMMdd' from  MYTEST_T

 5,   

1
2
3
4
5
6
7
select  to_char(sysdate, 'yyyy-MM-dd hh24:mi:ss' as  nowTime  from  dual;   //日期转化为字符串 
select  to_char(sysdate, 'yyyy' )   as  myyear    from  mytest;   //获取时间的年 
select  to_char(sysdate, 'mm' )     as  myMonth   from  mytest;   //获取时间的月 
select  to_char(sysdate, 'dd' )     as  myDay     from  mytest;   //获取时间的日 
select  to_char(sysdate, 'hh24' )   as  myHour    from  mytest;   //获取时间的时 
select  to_char(sysdate, 'mi' )     as  myMinute  from  mytest;   //获取时间的分 
select  to_char(sysdate, 'ss' )     as  mySecond  from  mytest;   //获取时间的秒

  

猜你喜欢

转载自blog.csdn.net/M_Jack/article/details/80928492