oralce 查询30天后生日 解决方案(解决跨年问题)
2017-12-08 00:00
239 查看
select PCC.INVNM custName, to_char(TO_DATE(pcc.BIRTHDAY, 'yyyyMMdd'),'yyyy/MM/dd') birthday from PRSP_CRM_CUSTINFO pcc where PCC.DELETE_FLG='0' <if test="isYears=='0'.toString()"> and to_char(TO_DATE(pcc.BIRTHDAY, 'yyyyMMdd'),'MMdd') >= to_char(sysdate,'MMdd') and to_char(TO_DATE(pcc.BIRTHDAY, 'yyyyMMdd'),'MMdd') <![CDATA[ <= ]]> to_char(sysdate+30,'MMdd') </if> <if test="isYears=='1'.toString()"> and to_char(TO_DATE(pcc.BIRTHDAY, 'yyyyMMdd'),'MMdd') >= to_char(sysdate,'MMdd') or to_char(TO_DATE(pcc.BIRTHDAY, 'yyyyMMdd'),'MMdd') <![CDATA[ <= ]]> to_char(sysdate+30,'MMdd') </if>
首先根据 当前日期 判断 30天后是否 跨年
/** * 判断跨年 * @return 不返回true(跨年 返回false) */ public static boolean isYares(){ boolean flg=false; SimpleDateFormat df = new SimpleDateFormat("yyyyMMdd");//设置日期格式 Date today = new Date(); Calendar theCa = Calendar.getInstance(); theCa.setTime(today); theCa.add(theCa.DATE, +30);//最后一个数字30可改,30天的意思 Date start = theCa.getTime(); String endDate = df.format(start);//三十天之前日期 String startDate=df.format(today); String endYear = endDate.substring(0, 4); String startYear = startDate.substring(0, 4); if(endYear.equals(startYear)){ flg=true; } return flg; }
根据这个赋值 isYears 去判断
目前一条SQL 解决的 暂时没看到。所以用了 一个动态sql解决
有问题随时联系 QQ群 600922504
相关文章推荐
- MySQL字符集中文乱码终极解决方案和mysql查询中文问题解决方法[转贴]
- MySQL字符集中文乱码终极解决方案和mysql查询中文问题解决方法[转贴]
- MySQL字符集中文乱码终极解决方案和mysql查询中文问题解决方法[转贴]
- [MySQL]-->查询5天之内过生日的同事中的跨年问题的解决过程
- MySQL字符集中文乱码终极解决方案和mysql查询中文问题解决方法[转贴]
- [MySQL]-->查询5天之内过生日的同事中的跨年问题的解决过程
- 抛砖引玉:使用二进制位操作,解决铁道部火车票的数据查询和存储问题,超轻量级的解决方案
- MySQL字符集中文乱码终极解决方案和mysql查询中文问题解决方法[转贴]
- MySQL字符集中文乱码终极解决方案和mysql查询中文问题解决方法[转贴]
- 通用解决方案:解决NHibernate SELECT 多表查询结果List绑定控件显示问题。
- 如何解决oracle分页查询数据重复问题
- 关于上次说的强类型dataset中事务问题的解决办法,也实用于一般的事务解决方案
- Oralce11g新性能以及ORA-28000和ORA-28001问题的解决
- ArcSDE关联查询时ArcMap与REST查询结果不一致的问题解决
- oracle分页查询数据重复问题的解决
- 【ElasticSearch】 QueryString查询中文歧义词异常问题解决
- 利用媒体查询解决固定定位按钮被呼出键盘影响的问题
- 项目中一个简单SQL查询问题,已经解决了,留个纪念,非常感谢帮我的朋友们。
- sqlserver -- 学习笔记(三)解决php连接sqlserver2005视图时显示“异类查询要求为连接设置 ANSI_NULLS 和 ANSI_WARNINGS 选项”的问题
- 【转】解决Oracle分页查询中排序与效率问题