SQL数据操作基础(中级)10
作者 佚名技术
来源 数据库编程
浏览
发布时间 2012-03-22
s) affected) Month Posted列显示了每个站点被查询的月份。函数DATEPART()的返回值是一个整数。你可以用这个函数抽取日期的各个不同部分,如表11.2所示。 表11.2 日期的各部分及其简写 日期部分 简写 值 year yy 1753--9999 quarter QQ 1--4 month mm 1--12 day of year dy 1--366 day dd 1--31 week wk 1--53 weekday dw 1--7(Sunday--Saturday) hour hh 0--23 minute mi 0--59 second ss 0--59 milisecond ms 0--999 当你需要进行日期和时间的比较时,使用函数DATEPART()返回整数是有用的。但是,上例中的查询结果(2,5)不是十分易读。要以更易读的格式得到部分的日期和时间,你可以使用函数DATENAME(),如下例所示: SELECT site_name ‘Site Name’ DATENAME(mm,site_entrydate) ‘Month Posted’ FROM site_directory 函数DATENAME()和函数DATEPART()接收同样的参数。但是,它的返回值是一个字符串,而不是一个整数。下面是上例该用DATENAME()得到的结果: Site Name Month Postec …………………………………………………………………. Yahoo February Microsoft June Magicw3 June (3 row(s) affected) 你也可以用函数DATENAE()来抽取一个星期中的某一天。下面的这个例子同时抽取一周中的某一天和日期中的月份: SELECT site_name ‘Site Name’, DATENAME(dw,site_entrydate)+ ‘-’ + DATENAME(mm,site_entrydate) ‘Day and Month Posted’ FORM site_directory 这个例子执行时,将返回如下的结果: Site Name Day and Month Posted ……………………………………………………………………… Yahoo Friday - February Microsoft Tuesday - June Magicw3 Monday - June (3 row(s) affected) 返回日期和时间范围 当你分析表中的数据时,你也许希望取出某个特定时间的数据。你也许对特定的某一天中――比如说2000年12月25日――访问者在你站点上的活动感兴趣。要取出这种类型的数据,你也许会试图使用这样的SELECT语句: SELECT * FROM weblog WHERE entrydate=”12/25/20000” 不要这样做。这个SELECT语句不会返回正确的记录――它将只返回日期和时间是12/25/2000 12:00:00:000AM的记录。换句话说,只有刚好在午夜零点输入的记录才被返回。 注意: 在本节的讨论中,假设字段entrydate是DATETIME型,而不是SMALLDATETIME型。本节的讨论对SMALLDATETIME型字段也是适用的,不过SMALLDATETIME型字段只能精确到秒。 问题是SQL Sever将用完整的日期和时间代替部分日期和时间。例如,当你输入一个日期,但不输入时间时,SQL Sever将加上缺省的时间“12:00:00:000AM”。当你输入一个时间,但不输入日期时,SQL Sever将加上缺省的日期“Jan 1 1900”。 要返回正确的记录,你需要适用日期和时间范围。有不止一种途径可以做到这一点。例如,下面的这个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%’ 这个语句可以匹配正确的记录。因为通配符“%”代表了任何时间。 使用这两种匹配日期和时间范围的函数,你可以选择某个月,某一天,某一年,某个小时,某一分钟,某一 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |
你可能对下面的文章感兴趣
上一篇: Microsoft SQLServer安装示例下一篇: 操作数据:SQL基础
关于SQL数据操作基础(中级)10的所有评论