oracle中查询时日期时间作为条件,该怎么处理
- 提问者网友:斑駁影
- 2021-01-31 10:12
- 五星知识达人网友:轮獄道
- 2021-01-31 10:48
比如
select name from birth_info where
birthday between to_date ('2001-03-05','yyyy-mm-dd')
and
to_date ('2001-03-15','yyyy-mm-dd');
- 1楼网友:独行浪子会拥风
- 2021-01-31 10:57
--如果表个数是不确定的 写个存储过程吧 调用时输入表名作为参数即可自动 --将记录取出插入pdbase表中 create or replace procedure p_name (m_tablename in varchar) --需要提取数据的表名 as --定义过程中的变量,变量类型根据自己需要定义,varchar2类型的需带精度 l_column1 varchar2(20); l_column2 varchar2(20); l_column3 varchar2(20); --定义一个游标 cursor c_charges is select column1,column2,column3 --记录的列多的话,可以多定义几个 from m_tablename where datetime >= to_date('2004-05-27 07:00:00', 'yyyy-mm-dd hh24:mi:ss') and datetime <= to_date('2004-06-27 07:00:00', 'yyyy-mm-dd hh24:mi:ss') begin open c_charges; loop fetch c_charges into l_column1,l_column2,l_column3 exit when c_charges%notfound; insert into pdbase (column1,column2,column3) values (l_column1,l_column2,l_column3) end loop; close c_charges; end; --如果表个数是确定的,且只要查询效果,可直接使用合并查询 select * from t_test_1 where dt>=to_date('2010-04-03 07:00:00', 'yyyy-mm-dd hh24:mi:ss') and dt<=to_date('2010-04-10 07:00:00', 'yyyy-mm-dd hh24:mi:ss') union select * from t_test_2 where dt>=to_date('2010-04-03 07:00:00', 'yyyy-mm-dd hh24:mi:ss') and dt<=to_date('2010-04-10 07:00:00', 'yyyy-mm-dd hh24:mi:ss') union select * from t_test_3 where dt>=to_date('2010-04-03 07:00:00', 'yyyy-mm-dd hh24:mi:ss') and dt<=to_date('2010-04-10 07:00:00', 'yyyy-mm-dd hh24:mi:ss') --有几个表,写几个union连接在后面即可
还有什么问题 可以联系我!