WEB开发网
开发学院数据库MySQL 掌握SQL四条最基本的数据操作语句 阅读

掌握SQL四条最基本的数据操作语句

 2006-04-07 10:44:30 来源:WEB开发网   
核心提示: 同样我们应该指出order by子句只将临时表中的结果进行排序;并不影响原来的表, 假设我们希望得到按部门排序并从工资最高的雇员到工资最低的雇员排列的列表,掌握SQL四条最基本的数据操作语句(9),除了工资括号中的内容,我们还希望看到按照聘用时间从最近聘用的雇员开始列出的列表,在sql语句

同样我们应该指出order by子句只将临时表中的结果进行排序;并不影响原来的表。

假设我们希望得到按部门排序并从工资最高的雇员到工资最低的雇员排列的列表。除了工资括号中的内容,我们还希望看到按照聘用时间从最近聘用的雇员开始列出的列表。以下是你将要用到的语句:

select branch_office,first_name,

last_name,salary,hire_date

from employees

order by salary desc,

hire_date desc;

这里我们进行了多列的选择和排序。排序的优先级由语句中的列名顺序所决定。sql将先对列出的第一个列进行排序。如果在第一个列中出现了重复的行时,这些行将被按照第二列进行排序,如果在第二列中又出现了重复的行时,这些行又将被按照第三列进行排序……如此类推。这次查询的结果如表5所示。

将一个很长的表中的所有列名写出来是一件相当麻烦的事,所以sql允许在选择表中所有的列时使用*号:

select * from employees;

这次查询返回整个employees表,如表1所示。

下面我们对开始时给出的select语句的语法进行一下更新(竖直线表示一个可选项,允许在其中选择一项。):

select [distinct]

(column [{, columns}])| *

from table [ {, table}]

[order by column [asc] | desc

[ {, column [asc] | desc }]];

定义选择标准

在我们目前所介绍的select语句中,我们对结果表中的列作出了选择但返回的是表中所有的行。让我们看一下如何对select语句进行限制使得它只返回希望得到的行:

select columns from tables [where predicates];

where子句对条件进行了设置,只有满足条件的行才被包括到结果表中。这些条件由断言(predicate)进行指定(断言指出了关于某件事情的一种可能的事实)。如果该断言对于某个给定的行成立,该行将被包括到结果表中,否则该行被忽略。在sql语句中断言通常通过比较来表示。例如,假如你需要查询所有姓为jones的职员,则可以使用以下select语句:

上一页  4 5 6 7 8 9 10  下一页

Tags:掌握 SQL 基本

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接