Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

数据比较

Fromaer  发表于:2009-04-30 17:25:39  
复制

我在做一个查询的时候,遇到一个问题:现在需要比较产品批号的月份与当前日期月份的关系,因为产品批号是yymmdd日期形式的,但在表中定义的是文本,所以我是这样写的条件

字段:Mid([cpph],2,2)

条件是>=Month(Date()) And <=Month(Date())+1或>=Month(Date()-182) And <=Month(Date()-182)+1,

但是符合条件的结果却查不出来,请教了。

是不是需要转换数据类型呢?

 

Top
豆豆 发表于:2009-04-30 17:35:55

Mid([cpph],2,2)

Mid("yymmdd",2,2)=ym

改为

Mid([cpph],3,2)

Mid("yymmdd",3,2)=mm

 



Fromaer 发表于:2009-05-05 08:57:28
谢谢,但是改了之后还是不行!

trynew 发表于:2009-05-05 11:29:39

?mid("090506",3,2)
05
?Month(Date())
 5
?format(date(),"mm")
05
?val(mid("090506",3,2))
 5
--------------------------

你用mid()求出来的是两位的字符串,用Month()算出来的是一到两位数字,进行比较当然会出错。

再试试改为

Val(Mid([cpph],3,2))

 



hello 发表于:2009-05-06 11:19:01

水平太高。学习了。



总记录:4篇  页次:1/1 9 1 :