用 lanbing1400的:
下面这段话你看一看:
当你分析表中的数据时,你也许希望取出某个特定时间的数据。
你也许对特定的某一天中――比如说2000年12月25日――访问者在你站点上的活动感兴趣。
要取出这种类型的数据,你也许会试图使用这样的SELECT语句:
SELECT * FROM weblog WHERE entrydate=”12/25/20000”
不要这样做。这个SELECT语句不会返回正确的记录――它将只返回日期和时间
是12/25/2000 12:00:00:000AM的记录。换句话说,只有刚好在午夜零点输入的记录才被返回。
要返回正确的记录,你需要适用日期和时间范围。有不止一种途径可以做到这一点。例如,
下面的这个SELECT 语句将能返回正确的记录:
SELECT * FROM weblog
WHERE entrydate>=”12/25/2000” AND entrydate<”12/26/2000”
这个语句可以完成任务,因为它选取的是表中的日期和时间大于等于
12/25/2000 12:00:00:000AM并小于12/26/2000 12:00:00:000AM的记录。换句话说,
它将正确地返回2000年圣诞节这一天输入的每一条记录。
另一种方法是,你可以使用LIKE来返回正确的记录。通过在日期表达式中包含
通配符“%”,你可以匹配一个特定日期的所有时间。这里有一个例子:
SELECT * FROM weblog WHERE entrydate LIKE ‘Dec 25 2000%’
这个语句可以匹配正确的记录。因为通配符“%”代表了任何时间。
使用这两种匹配日期和时间范围的函数,你可以选择某个月,某一天,某一年,某个小时,
某一分钟,某一秒,甚至某一毫秒内输入的记录。但是,如果你使用LIKE 来匹配秒或毫秒
,你首先需要使用函数CONVERT()把日期和时间转换为更精确的格式