导航:首页 > 净水问答 > oracle日期过滤

oracle日期过滤

发布时间:2023-08-28 00:50:26

① oracle计算N个工作日后的日期,过滤

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import java.util.Vector;
class MyCalander
{
private int year, month, day;
private Date startDay;
private Vector<Date> holidays;
public MyCalander()
{
startDay = new Date();
holidays = new Vector<Date>();
}
public void SetStartDay(String str)
{
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
try {
startDay = sdf.parse(str);
} catch (ParseException e) {
e.printStackTrace();
}
}
public void SetHoliday(String str)
{
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
Date hd = new Date();
try {
hd = sdf.parse(str);
holidays.add(hd);
} catch (ParseException e) {
e.printStackTrace();
}
}
public void GetWorkDay(int n)
{
Calendar calendar = Calendar.getInstance();
Date cursorDay = startDay;
for(int i = 0; i < n; i++)
{
calendar.setTime(cursorDay);
do{
calendar.add(Calendar.DATE, 1);
cursorDay = calendar.getTime();
}while(calendar.get(Calendar.DAY_OF_WEEK) == 1 ||
calendar.get(Calendar.DAY_OF_WEEK) == 7 ||
holidays.contains(calendar.getTime()));
}
System.out.println("The day is :" + cursorDay);
}
}
public class test
{
public static void main(String [] args)
{
MyCalander myCalander = new MyCalander();
myCalander.SetStartDay("2013/2/25");
myCalander.SetHoliday("2013/3/11");
myCalander.SetHoliday("2013/3/8");
/************************************************
* connect database and set holidays here.
* for(...)
* myCalander.SetHoliday("yyyy/mm/dd");
***********************************************/
myCalander.GetWorkDay(10);
}

执行结果:
C:\>java test
The day is :Wed Mar 13 00:00:00 JST 2013

② oracle去除不合法日期

2个办法:

1. 用游标,逐行进行to_date(datecol,'yyyymmdd'),如果出现exception,则日期格式错误。

2. 自己写一个函数,输入日回期字符串,答输出1/0
判断此格式的字符串是否是正确的日期,函数中可以:
a. 用to_date(datecol,'yyyymmdd'),如果出现exception,则日期格式错误,返回0;否则返回1。
或者

b. 自己进行日期的规则判断:1年有12个月,各个月有多少天(闰年的2月需要特别处理)
然后update或者delete

比如 delete from table where f_date_validate(datecol) = 0;

③ oracle数据库的过滤问题:如何过滤两个表中相同的部分数据。比如说A表与B表都有记录

试试下面的SQL语句是否符合你的需求: --A:
select XX_id
from tiantiantian
where sum_date=20110420
and XX_status < 30
and XX_type in (1009, 1008, 1003, 1011)
and XX_date > to_date(20110420, 'yyyymmdd')
and not exists(
select xx_id from dididi
where sum_date=20110420
and XX_status < 30
and XX_type in (1009, 1008, 1003, 1011)
and XX_date > to_date(20110420, 'yyyymmdd'));
--B:
select XX_id
from dididi
where sum_date=20110420
and XX_status < 30
and XX_type in (2001)
and XX_date > to_date(20110420, 'yyyymmdd')
and not exists(
select xx_id from tiantiantian
where sum_date=20110420
and XX_status < 30
and XX_type in (2001)
and XX_date > to_date(20110420, 'yyyymmdd'));

④ Oracle过滤掉无用的日期数据问题

日期强烈不建议使用字符串。。。。。
写存储过程可以搞搞

⑤ oracle怎么计算两个日期之间去除周末的天数

selectcount(1)from(
selectto_char(TO_DATE('2016-12-24','yyyy-MM-dd')-level,'d')DOW
fromal
connectbylevel<=trunc(TO_DATE('2016-12-24','yyyy-MM-dd')-TO_DATE('2016-11-19','yyyy-MM-dd'))
)whereDOWnotin(7,1);

总结:

第一层查询是通过connectbylevel生成两个日期间的天数行

其中to_char(,'d')DOW字段返回的是周几的对应1~7的数字

第二层查询就是去掉周六周日然后count天数

⑥ kettle 怎么根据时间字段进行过滤

今天使用kettle从mysql导数到oracle,发现只导了7行后,数据传输就终止了,查看日志信息,报内错如下容:

image

报:Couldn't get row from result set问题。

发现从这行开始这个时间字段除了正常的时间数据以外还有NULL值,难道这类的值引起的错误,在查询了相关资料后,才知道jdbc(默认行为)认为null或'0000-00-00'这样的日期时间值是无效的。如果想避开这个问题,需要编辑jdbc的连接属性,添加如下属性值:

zeroDateTimeBehavior=convertToNull

image

设置之后导数成功进行。

image

所以,设计生产系统中的相关表时,默认值最好不要使用'0000-00-00'或null这样的值。

⑦ Oracle Sql 查询按时分过滤时间区段

SQL>CREATETABLET(KSSJDATE,JSSJDATE);

表已创建。

SQL>INSERTINTOTVALUES(to_date('09:30','HH24:MI'),to_date('11:30','HH24:MI'));

已创建1行。

SQL>COMMIT;

提交完成。

SQL>SELECTTO_CHAR(KSSJ+((ROWNUM-1)/48),'HH24:MI')KSSJ,TO_CHAR(KSSJ+(ROWNUM/48),'HH24:MI')JSSJ
2FROMTCONNECTBYROWNUM<=4;

KSSJJSSJ
----------
09:3010:00
10:0010:30
10:3011:00
11:0011:30

是你说的意思不?

阅读全文

与oracle日期过滤相关的资料

热点内容
蒸馏水跟2次蒸馏水的区别 浏览:895
颗粒很细为什么不能过滤除去 浏览:85
16款轩逸波箱油滤芯在什么位置 浏览:391
实习建设污水处理厂 浏览:488
潍坊水处理设备市场 浏览:974
红苹果净水器怎么样 浏览:336
喝水的净水器怎么清洗 浏览:381
不锈钢壶除水垢妙招 浏览:337
渭南污水cod含量是多少 浏览:696
工业磁化除垢器是怎么回事 浏览:949
污水处理厂ppt小学生 浏览:63
1万只鸡屠宰有多少废水 浏览:50
净水器有ro膜但膜规格无 浏览:897
自己配制超滤膜消毒液 浏览:347
小米净水器的滤芯怎么节省 浏览:418
卫生所废水 浏览:751
污水井道是什么意思 浏览:629
树脂滴水瓦起什么作用 浏览:108
武汉污水深隧工程设计院 浏览:208
需要自己取水饮水机怎么用 浏览:752