Office中国论坛/Access中国论坛

标题: [求助]有关时间范围数据选取的问题 [打印本页]

作者: itez    时间: 2007-2-9 20:42
标题: [求助]有关时间范围数据选取的问题
说明:表tblBenchmarks的录入界面和查询界面都使用如附件所示方式,时间范围采用记录第一天和最后一天的方式。

请教:
1、当查询的时候,可能并不会完全以整月为单位查询,可能会出现查询从2006年2月15日到2006年3月15的情况,那么这样的话如何写查询2呢?
2、查询日期如果为在数据库已有的时间记录里(如2006-2-28之后或2006-2-1之前)的话,是不是还要先进行一个判定?
3、表tblBenchmarks如何设定关键字以避免数据重复录入的情况?(或者直接覆盖?)

其他:这种方式看来问题比较多,有没有其他方法,比如说在录入界面选择完“日期从”和“日期到”以后保存的时候自动完成这段时间的写入(如1日到30日,30条记录);再比如干脆就按整月录入和查询(极其不情愿采取的方法,灵活性太差),如何编写比较完美?

谢谢!

[attach]23044[/attach]

作者: 一点通    时间: 2007-2-9 23:43
问题太多,以后提问最好分开来问,这样才会更快得到回复
作者: hi-wzj    时间: 2007-2-10 00:40
看不是太懂,回答也就不一定准确。

1、可以用between [开始日期] and [结束日期] 做筛选条件来完成。

2、不明白是什么意思。

3、表tblBenchmarks如何设定关键字,这要看您具体的情况具体的要求了。
作者: itez    时间: 2007-2-10 16:37
那就只问一个问题,[开始日期]和[结束日期]是一条记录中的两个字段,如何用between [开始日期] and [结束日期]查询?

谢谢!
作者: 一点通    时间: 2007-2-10 16:49
如果是两个字段,可以分别写入:>=[开始日期]

                                <=[结束日期]
作者: itez    时间: 2007-2-10 17:48
例如只有两条记录:

1 甲 07/01/01 07/01/31 500

2 甲 01/02/01 07/02/28 300

查询日期范围从06/12/15(没有写错)到06/03/15(没有写错)的数据,如何编写才能返回查询结果:

1 甲 07/01/01 500

2 甲 07/01/02 500

3 甲 07/01/03 500







N   甲 07/01/31 500

N+1 甲 07/02/01 300

N+2 甲 07/02/02 300







N+N 甲 07/02/28 300

等同于查询日期范围从06/01/01(没有写错)到06/02/28

谢谢!
作者: 一点通    时间: 2007-2-10 18:29
无法理解
作者: andymark    时间: 2007-2-10 22:19
以下是引用itez在2007-2-10 9:48:00的发言:


例如只有两条记录:

1 甲 07/01/01 07/01/31 500

2 甲 01/02/01 07/02/28 300

查询日期范围从06/12/15(没有写错)到06/03/15(没有写错)的数据,如何编写才能返回查询结果:

1 甲 07/01/01 500

2 甲 07/01/02 500

3 甲 07/01/03 500







N   甲 07/01/31 500

N+1 甲 07/02/01 300

N+2 甲 07/02/02 300







N+N 甲 07/02/28 300

等同于查询日期范围从06/01/01(没有写错)到06/02/28

谢谢!

      有必要把具体规则说清楚




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3