永发信息网

oracle中查询时日期时间作为条件,该怎么处理

答案:2  悬赏:40  手机版
解决时间 2021-01-31 13:12
  • 提问者网友:斑駁影
  • 2021-01-31 10:12
oracle中查询时日期时间作为条件,该怎么处理
最佳答案
  • 五星知识达人网友:轮獄道
  • 2021-01-31 10:48
select 目标列 from 表名 where 时间列=to_date('时间','yyyy-mm-dd hh24:mi:ss');
比如
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连接在后面即可

还有什么问题 可以联系我!

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯