📄 11-4-7.cfm.htm
字号:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>抽取日期和时间</title>
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
</head>
<body>
<font FACE="宋体"><b>
<p ALIGN="JUSTIFY">抽取日期和时间</p>
</b></font><font FACE="宋体" SIZE="3">
<p ALIGN="JUSTIFY">在许多情况下,你也许只想得到日期和时间的一部分,而不是完整的日期和时间。例如,假设你想列出你的站点目录中每个站点被查询的月份。这时你不希望完整的日期和时间把网页弄乱。为了抽取日期的特定部分,你可以使用函数DATEPART(),象这样:</p>
<p ALIGN="JUSTIFY">SELECT site_name </font><font SIZE="3">‘</font><font FACE="宋体"
SIZE="3">Site Name</font><font SIZE="3">’</font><font FACE="宋体" SIZE="3">,</p>
<p ALIGN="JUSTIFY">DATEPART(mm,site_entrydate) </font><font SIZE="3">‘</font><font
FACE="宋体" SIZE="3">Month Posted</font><font SIZE="3">’</font><font FACE="宋体"
SIZE="3"> FROM site_directory</p>
<p ALIGN="JUSTIFY">函数DATEPART()的参数是两个变量。第一个变量指定要抽取日期的哪一部分;第二个变量是实际的数据。在这个例子中,函数DATEPART()抽取月份,因为mm代表月份。下面是这个SELECT
语句的输出结果:</p>
<p ALIGN="JUSTIFY">Site Name Month Posted</p>
</font><font SIZE="3">
<p ALIGN="JUSTIFY">………………………………………………………………</p>
</font><font FACE="宋体" SIZE="3">
<p ALIGN="JUSTIFY">Yahoo 2</p>
<p ALIGN="JUSTIFY">Microsoft 5</p>
<p ALIGN="JUSTIFY">Magicw3 5</p>
<p ALIGN="JUSTIFY">(3 row(s) affected)</p>
<p ALIGN="JUSTIFY">Month Posted列显示了每个站点被查询的月份。函数DATEPART()的返回值是一个整数。你可以用这个函数抽取日期的各个不同部分,如表11.2所示。</p>
<p ALIGN="JUSTIFY">表11.2 日期的各部分及其简写</p>
<p ALIGN="JUSTIFY">日期部分 简写 值</p>
<p ALIGN="JUSTIFY">year yy 1753--9999</p>
<p ALIGN="JUSTIFY">quarter qq 1--4</p>
<p ALIGN="JUSTIFY">month mm 1--12</p>
<p ALIGN="JUSTIFY">day of year dy 1--366</p>
<p ALIGN="JUSTIFY">day dd 1--31</p>
<p ALIGN="JUSTIFY">week wk 1--53</p>
<p ALIGN="JUSTIFY">weekday dw 1--7(Sunday--Saturday)</p>
<p ALIGN="JUSTIFY">hour hh 0--23</p>
<p ALIGN="JUSTIFY">minute mi 0--59</p>
<p ALIGN="JUSTIFY">second ss 0--59</p>
<p ALIGN="JUSTIFY">milisecond ms 0--999</p>
<p ALIGN="JUSTIFY">当你需要进行日期和时间的比较时,使用函数DATEPART()返回整数是有用的。但是,上例中的查询结果(2,5)不是十分易读。要以更易读的格式得到部分的日期和时间,你可以使用函数DATENAME(),如下例所示:</p>
<p ALIGN="JUSTIFY">SELECT site_name </font><font SIZE="3">‘</font><font FACE="宋体"
SIZE="3">Site Name</font><font SIZE="3">’</p>
</font><font FACE="宋体" SIZE="3">
<p ALIGN="JUSTIFY">DATENAME(mm,site_entrydate) </font><font SIZE="3">‘</font><font
FACE="宋体" SIZE="3">Month Posted</font><font SIZE="3">’</p>
</font><font FACE="宋体" SIZE="3">
<p ALIGN="JUSTIFY">FROM site_directory</p>
<p ALIGN="JUSTIFY">函数DATENAME()和函数DATEPART()接收同样的参数。但是,它的返回值是一个字符串,而不是一个整数。下面是上例该用DATENAME()得到的结果:</p>
<p ALIGN="JUSTIFY">Site Name Month Postec</p>
</font><font SIZE="3">
<p ALIGN="JUSTIFY">…………………………………………………………………</font><font
FACE="宋体" SIZE="3">.</p>
<p ALIGN="JUSTIFY">Yahoo February</p>
<p ALIGN="JUSTIFY">Microsoft June</p>
<p ALIGN="JUSTIFY">Magicw3 June</p>
<p ALIGN="JUSTIFY">(3 row(s) affected)</p>
<p ALIGN="JUSTIFY">你也可以用函数DATENAE()来抽取一个星期中的某一天。下面的这个例子同时抽取一周中的某一天和日期中的月份:</p>
<p ALIGN="JUSTIFY">SELECT site_name </font><font SIZE="3">‘</font><font FACE="宋体"
SIZE="3">Site Name</font><font SIZE="3">’</font><font FACE="宋体" SIZE="3">,</p>
<p ALIGN="JUSTIFY">DATENAME(dw,site_entrydate)+ </font><font SIZE="3">‘</font><font
FACE="宋体" SIZE="3">-</font><font SIZE="3">’</font><font FACE="宋体" SIZE="3"> +
DATENAME(mm,site_entrydate)</p>
<p ALIGN="JUSTIFY"></font><font SIZE="3">‘</font><font FACE="宋体" SIZE="3">Day and
Month Posted</font><font SIZE="3">’</font><font FACE="宋体" SIZE="3"> FORM
site_directory</p>
<p ALIGN="JUSTIFY">这个例子执行时,将返回如下的结果:</p>
<p ALIGN="JUSTIFY">Site Name Day and Month Posted</p>
</font><font SIZE="3">
<p ALIGN="JUSTIFY">………………………………………………………………………</p>
</font><font FACE="宋体" SIZE="3">
<p ALIGN="JUSTIFY">Yahoo Friday - February</p>
<p ALIGN="JUSTIFY">Microsoft Tuesday - June</p>
<p ALIGN="JUSTIFY">Magicw3 Monday - June</p>
<p ALIGN="JUSTIFY">(3 row(s) affected)</p>
</font>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -