网站开发日志

2009年8月27日星期四

分享家:Addthis中国

mysql命令行 - 限制查询结果

在前面章节学习的查询语句都没有限制查询结果的数目,也就是说只要是满足条件的结果都会被显示。在这一节里我们要学习:

如何限制查询结果?

mysql里我们使用LIMIT从句来限制查询结果的数目。例如:

SELECT f_name, l_name from employee_data LIMIT 5;
+---------+--------+
| f_name  | l_name |
+---------+--------+
| Manish  | Sharma |
| John    | Hagan  |
| Ganesh  | Pillai |
| Anamika | Pandit |
| Mary    | Anchor |
+---------+--------+
5 rows in set (0.01 sec)

上述例子里,我用到LIMIT 5,这样就限制了查询结果的数目。当然如果满足条件的结果只有4个,就只显示4个。

LIMIT和我们上一节学到的ORBER BY常常会被用在一起,例如:

SELECT f_name, l_name, age from employee_data ORDER BY age DESC LIMIT 4;
+--------+----------+------+
| f_name | l_name   | age  |
+--------+----------+------+
| Paul   | Simon    |   43 |
| Mike   | Harper   |   36 |
| Peter  | Champion |   36 |
| Roger  | Lewis    |   35 |
+--------+----------+------+
4 rows in set (0.00 sec)

上述例子里,我们先把查询结果按照年龄从大到小排列,然后显示前4个,这样就得到4个年龄最大的员工姓名了。

其实,LIMIT从句还可以带两个变量,例如:

SELECT f_name, l_name from employee_data LIMIT 6,3;
+--------+------------+
| f_name | l_name     |
+--------+------------+
| John   | MacFarland |
| Edward | Sakamuro   |
| Alok   | Nanda      |
+--------+------------+
3 rows in set (0.00 sec)
上述例子里,我们使用LIMIT 6,3,第一个变量6表示从第七个结果(注意:第一个变量是从0开始的),第二个变量3表示输出结果的限制。这种查询一般在分页输出结果的时候用到。例如每页数出10个结果,那么第一页为LIMIT 0 10,第二页为LIMIT 10 10 等等。

标签: ,

相关文章:

0 条评论:

发表评论

指向此帖子的链接:

创建链接