首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

怎么在有月份和时间的表中插入数据

2012-04-06 
如何在有月份和时间的表中插入数据请问 我要建立一个表A 这个表有4个字段 分别是 s_idNUMBER (8)monthVAR

如何在有月份和时间的表中插入数据
请问 我要建立一个表A 这个表有4个字段 分别是 s_id NUMBER (8);
  month VARCHAR2 (2 BYTE);
  day NUMBER (2);
FLAG NUMBER (1);

要实现s_id 从1到13 
month 从1到12
day 应该为能自动识别出所属的月份是30 天 31天 还是28天
falg 全部为0即可。
可以写过程实现 但这个应该如何写 才能把这些数据插入到表中呢?

[解决办法]
根据month可以得到这个月的最后一天,使用last_day()函数,与本月第一天相减再加1即可得到本月的天数
[解决办法]

insert into a
(s_id ,month,day ,FLAG )
select sid,to_char(ymd,'mm'),to_char(last_day(ymd),'dd'),'0'
from(
select add_months(to_date('201001','yyyymm'),rownum-1) ymd,rownum sid
from dual
connect by rownum < 13
)
[解决办法]

探讨
insert into a
(s_id ,month,day ,FLAG )
select sid,to_char(ymd,'mm'),to_char(last_day(ymd),'dd'),'0'
from(
select add_months(to_date('201001','yyyymm'),rownum-1) ymd,rownum sid
from dual
co……

[解决办法]
探讨
insert into a
(s_id ,month,day ,FLAG )
select sid,to_char(ymd,'mm'),to_char(last_day(ymd),'dd'),'0'
from(
select add_months(to_date('201001','yyyymm'),rownum-1) ymd,rownum sid
from dual
co……

[解决办法]
只知道connect by是Oracle的递归查询
具体用法还没弄清

热点排行