难,难题.高手请进! 求SQL语句
有一个表,有如下字段: 假设今天是2005年2月2号,想从表里day_03字段开始查询,查到day_31,找到第一个
与day_02内容相匹配的字段名,如果没有就在MONTH上加1,到下个月去,从day_01开始查,如果month是12的话,就将year加1,再从day_01开始查,始终是为了找到第一个与2005年2月2号对应字段的内容相同的字段名.
急,在线等
字段名 内容(day_01等的内容,0表示上班,1表示休息)
id(pkey) 1000
year 2005
month 02
day_01 1
day_02 0
.
.
day_30 1
day_31 0
[355 byte] By [
msdn] at [2007-8-14 15:30:58]

# 3 Re: 难,难题.高手请进! 求SQL语句
是工作日确认,对不起,上面的假设今天是2005年2月2号,今天的对应的字段内容是固定的,是1.
# 4 Re: 难,难题.高手请进! 求SQL语句
对不起,搞错了.ID不是PKEY 如果没有找到匹配记录,就根据PKEY,到下月的那条记录里去查
year (PKEY) 2005
month (PKEY) 02
# 5 Re: 难,难题.高手请进! 求SQL语句
我的日期是从另一个表提出来的.
而且要在ASP.NET(VB.NET),ORACLE9I里使用的.
请再看看
谢谢
# 6 Re: 难,难题.高手请进! 求SQL语句
前辈好象搞错了.
假设2005年2月2日,该表里根据2005年2月只有一条记录,一条记录的不同字段,对应不同的日期.
不同日期字段下的内容,代表该日期是否休息.我是要提出当前工作日的下一个工作日.
# 7 Re: 难,难题.高手请进! 求SQL语句
根据你输入的日期对视图进行查询:
select mc.year||'-'||mc.month||'-'||mc.day next_work_day
from my_calendar mc
where
mc.year||'-'||mc.month||'-'||mc.day > to_char(日期,'YYYY-MM-DD')
and mc.value = 1;
lynx at 2005-3-2 10:40:50 >

# 9 Re: 难,难题.高手请进! 求SQL语句
下面有语法错误
日期:20050202
可以吗?
where
mc.year||'-'||mc.month||'-'||mc.day > to_char(日期,'YYYY-MM-DD')
and mc.value = 1;
# 11 Re: 难,难题.高手请进! 求SQL语句
对不起,其他都好了,只是最后,都不对
where
mc.year||mc.month||mc.day > to_char(20050202,'YYYYMMDD')
and mc.value = 1
where
mc.year||mc.month||mc.day > to_char('0050202','YYYYMMDD')
and mc.value = 1