当前位置: 电脑软硬件应用网 > 设计学院 > 网络编程 > 数据库 > 正文 |
|
|||
SQL SERVER查询数据(二) | |||
2005-12-30 19:21:30 文/45IT收集 出处:电脑软硬件应用网 | |||
改变行序 我们现在已得到了一个象样的电话号码清单,但还有一点不太令人满意。我们所得到的数据不是真正按照逻辑顺序排列的。这是因为在authors表里,数据是按照一个名为“au_id”的列来排序的,即使我们不选择那个列,数据的排序仍然保持不变。现在我们需要对姓名重新排序,使姓氏按字母排序。为此,我们使用了一个新的SQL关键字ORDER BY 。使用关键字ORDER BY ,你要告诉SQL Server 按照那个列或列别名中的数据进行排序。本例中我们要使姓名按升序排列,即从A 到Z 排序。下面显示了关键字ORDER BY 的用法。 SELECT au_lname+','+au_fname AS 'Name',phone AS 'Phone' FROM authors ORDER BY 'Name' 在句子中,关键字ORDER BY 、需要排序的列(列别名)以及升降序说明都放在FROM 子句后面。有时人们称它为ORDER BY 字句。假如你要对同样的信息用降序方式排列,你只需将ASC换成DESC 。如果在句子中既不加入ASC,也不加入DESC,SQL Server 将自动把结果按下载升序方式排列。 注意:我们在上面的例子中所做的是利用字符串连接功能,把au_lname 和au_fname两列合并为一个逻辑列,取名“Name” 前面我们已经学了利用SELECT 语句在表中选择所有或部分列。但更多的时候你会需要限制所返回的行数,以便能在表中查找你感兴趣的特定纪录。如果每一次的查询都返回所有的记录,假如wincheer是老板的话,我想你应该做的事情是写一份求职信,然后去找另一个地方。为此,我们所要做的只是向SELECT语句中加入另一个关键字,它就是WHERE关键字。我一直很执著的认为,WHERE是衡量一个数据库程序员水平的重要标志。 1.比较操作符 SELECT au_lname+','+au_fname AS 'Name',phone AS 'Phone' 假设我们需要所有住在加州、其合同状态为1 并且不住在Oakland市的作者。 SELECT au_lname+','+au_fname AS 'Name',phone AS 'Phone' 注意:有一件重要的事你必须清楚,那就是一组布尔操作符的联用。回忆一下中学代数,所有在圆括号里的运算都必须优先执行(千万不要告诉我你没有上过中学)。例如:假如你想找出那些符合上面条件的作者再加上住在堪萨斯州的作者,你的WHERE子句应该像下面的这样: SQL Server 还为你提供了查询介于两个范围之间的数据的能力。 2.使用范围 SELECT title 我们也可以联合使用BETWEEN 关键字和NOT关键字来返回在某个范围之外的所有行。没有忘记NOT吧?看看前面。 另一种选项是在数据库中查找某个列表中列举到的信息。 3.使用列举 SQL Server 允许你使用关键字IN来搜索符合给定列举值的那些值。进行这种搜索,你必须知道所要求的值。 回到电话号码清单的例子,我们假定现在要提供居住在加州和俄勒冈州的所有作者的电话单。你可能会用以关键字AND 联接的两个比较操作符完成它,不过此例中使用关键词IN来做将少打一些字。因为有人说过,懒惰、怕麻烦是程序员可贵的品质 :-) SELECT au_lname+','+au_fname AS 'Name',phone AS 'Phone' 我们使用了带列举值的 IN 关键字,这些列举值放在圆括号里,用逗号分开。你还可以把IN关键字和NOT关键字合起来使用,这样可以得到所有不匹配列举值的行。 4.使用关键字LIKE 既然已学了SELECT语句的大多数基本用法,我们来看一些可与SELECT 语句联合使用的不同函数------讨厌的电话!明天吧?OK ? |
|||
最新热点 | 最新推荐 | 相关文章 | ||
javascript实用技巧点滴(三) javascript实用技巧点滴(2) javascript实用技巧点滴(1) javascript教程 - 第一课 1.1 用js制作完善的日,月组合下拉框 利用JSP编程建立动态Web站点 用PHP制作留言板 PHP生成动态WAP页面 PHP实现文件下载 PHP4的session功能 |
关于45IT | About 45IT | 联系方式 | 版权声明 | 网站导航 | |
Copyright © 2003-2011 45IT. All Rights Reserved 浙ICP备09049068号 |