|
|
 |
 |
|
|
 |
|
MySQL数据库技术(04)
|
|
|
|
编辑:华夏媒体 作者:未知 来源:网络 时间:2006-07-29 总浏览量:4158 |
|
文字大小:[ 大 中 小 ]
文字颜色: 双击滚屏/单击停止 |
|
[上一页] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [下一页]
|
此查询把名和姓连接起来,中间间隔一个空格,将总统名形成一个单一字符串,而且将出生城市和州连接在一起,中间隔一个逗号,形成出生地。 在利用表达式来计算列值时,此表达式被用作列标题。如果表达式很长(如前面的一些查询样例中那样),那么可能会出现一个很宽的列。为了处理这种情况,此列可利用AS name结构来重新命名标题。这样的名称为列别名。用这种方法可使上面的输出更有意义,如下所示:

 6. 使用日期 在MySQL 中使用日期时要记住的是,在表示日期时首先给出年份。1999 年7 月27 日表示为“1 9 9 9 - 0 7 - 2 7”,而不是像通常那样表示为“ 0 7 - 2 7 - 1 9 9 9”或“2 7 - 0 7 - 1 9 9 9”。MySQL 提供了几种对日期进行处理的方法。可以对日期进行的一些运算如下: ■ 按日期排序。(这点我们已经看到几次了。) ■ 查找特定的日期或日期范围。 ■ 提取日期值的组成部分,如年、月或日。 ■ 计算日期的差。 ■ 日期增加或减去一个间隔得出另一日期。 下面给出一些日期运算的例子。 为了查找特定的日期,可使用精确的日期值或与其他日期值进行比较,将一个D ATE 列与有关的日期值进行比较:
 为了测试或检索日期的成分,可使用诸如YEAR( )、MONTH( ) 或D AYOFMONTH( ) 这样的函数。例如,可通过查找月份值为3 的日期,找出与笔者出生在相同月份(三月)的总统。

 为了更详细,详细到天,可组合测试MONTH( ) 和D AYOFMONTH( ) 以找出在笔者的生日出生的总统:
 这是一种可用来生成类似报纸上娱乐部分所刊登的那种“这些人今天过生日”清单的查询。但是,不必按前面的查询那样插入一个特殊的日期。为了查找每年的今天出生的总统,只要将他们的生日与C U R R E N T _ D ATE 进行比较即可:
 可从一个日期减去另一个日期。这样可以知道日期间的间隔,这对于确定年龄是非常有用的。例如,为了确定哪位总统活得最长,可将其逝世日期减去出生日期。为此,可利用函数TO _ D AYS( ) 将出生日期和逝世日期转换为天数,求出差,然后除以365 得出大概的年龄:
 此查询中所用的FLOOR( ) 函数截掉了年龄的小数部分,得到一个整数。得出日期之差,还可以确定相对于某个特定日期有多长时间。这样可以告诉历史同盟的会员,他们还有多久就应该更新自己的会员资格了。计算他们的截止日期和当前日期之差,如果小于某个阈值,则不久就需要更新了。下面的查询是查找需要在60 天内更新的会员:
 自MySQL 3.22 以来,可使用D ATE_ADD( ) 或D ATE_SUB( ) 从一个日期计算另一个日期。这些函数取一个日期及时间间隔并产生一个新日期。例如:
 本节中前面给出的一个查询选择70 年代逝世的总统,它对选择范围的端点使用直接的日期值。该查询可以利用一个字符串日期和一个由开始日期和时间间隔计算出的结束日期来重写:
 会员更新查询可根据D ATE_ADD( ) 写出如下:
 本章前面给出了一个查询如下,确定不久要来检查但还没来诊所的牙科病人:
 现在回过头来看,读者会更清楚这个查询的含义了。 7. 模式匹配 MySQL 允许查找与某个模式相配的值。这样,可以选择记录而不用提供精确的值。为了进行模式匹配运算,可使用特殊的运算符( LIKE 和NOT LIKE),并且指定一个包含通配符的串。字符“_”匹配任意单个字符,而“%”匹配任意字符序列(包括空序列)。使用L I K E或NOT LIKE 的模式匹配都是不区分大小写的。下列模式匹配以“W”或“w”开始的姓:
|
|
[上一页] [1] [2] [3] [4] [5] [6] [7] [8] [9] [10] [11] [12] [13] [14] [15] [16] [下一页]
|
|
|
打印 收藏 关闭 至顶部 |
|
 |
|