求一個SQL語句

jackyhyoung 2004-08-24 09:55:17
job_no job_name job_year job_month
1 a 2003 jan
2 b 2002 oct
3 c 2003 jul
4 d 2002 jun
. . . .
. . . .
. . . .
現想得到所有2003/jan前的job_no,job_name,該怎么寫,在ACCESS內!
...全文
86 点赞 收藏 11
写回复
11 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
jackyhyoung 2004-08-24
qybao(阿宝)
=====
你的可以了,不過我覺得3樓的思路也很好,可能只是我這邊不好用,所以出錯!
等會結帖!.
回复
jackyhyoung 2004-08-24
其实我觉得一楼的可以的
==========
我不可能每一次都只出2003/jan前的表吧,可以是4,5,8等任何月份啊!
所以一樓是不行的!
回复
qybao 2004-08-24
job_month字段是字符类型还是时间类型?
如果是字符类型
select a.job_no,a.job_name
from (select job_no,job_name,(job_year+(case job_month when 'jan' then '01' when 'fab' then '02' when 'mar' then '03' when 'apr' then '04' when 'may' then '05' when 'jun' then '06' when 'jul' then '07' when 'aug' then '08' then 'sep' then '09' when 'oct' then '10' when 'nov' then '11' when 'dec' then '12' else '00' end) as job_yearmonth from your_table) a
where a.job_yearmonth < '200301'
其实我觉得一楼的可以的

如果是时间类型
select a.job_no,a.job_name
from your_table a
where (format(a.job_year, 'yyyy') + format(a.job_month, 'mm')) < '200301'
回复
jackyhyoung 2004-08-24
jinjazz(人雅的标记--落寞刺客)
 lwp2292662(版机)
會有解決的辦法,我記得好像中海回答過類似的問題,3樓的就很好!

回复
jackyhyoung 2004-08-24
zhenyukeji(美丽新家) ( ) 信誉:100

 不行啊
 語句錯誤?
 在Access內用的啊!
回复
lwp2292662 2004-08-24
select job_no,job_name from tablename where job_year<2003
想不到好办法呀。如果数据库真有问题的话,那就呵呵


回复
jinjazz 2004-08-24
这个市虾米数据库阿,month的类型是虾米
回复
select a.job_no,a.job_name
from (select job_no,job_name,job_month from tablename where job_year<2003) a
where a.job_month<jan
回复
jackyhyoung 2004-08-24
回复人: huangjianyou(小健) ( ) 信誉:123
大哥,如果是這么簡單的話,我也不會放到上面來了!
我也知道這個數據庫設計的不是很好,但沒有辦法,老總喜歡,我們只能按要求做!
回复
huangjianyou 2004-08-24
jan如果刚好是一月,那就不要理月份了:

select job_no,job_name from tablename where job_year<2003

实际上我觉得数据库设计有问题

^_^
回复
of123 2004-08-24
"select job_no,job_name from tablename where Cdate(job_month & '/01/' & job_year)<#" & Format("Jan/01/2003","yyyy-mm-dd") & "#"
回复
相关推荐
发帖

1188

社区成员

VB 数据库(包含打印,安装,报表)
申请成为版主
帖子事件
创建了帖子
2004-08-24 09:55
社区公告
暂无公告