写点什么

限量

用户头像
在即
关注
发布于: 2021 年 03 月 28 日
限量

对于一次性查询出的大量记录,不仅不便于阅读查看,还会浪费系统效率。

MySQL 中提供了一个关键字 LIMIT,可以限定记录的数量,也可以指定查询从哪一条记录开始(通常用于分页)。

SELECT [select 选项] 字段列表 FROM 数据表名

[WHERE 条件表达式] [ORDER BY 字段 ASC|DESC]

LIMIT [OFFSET,] 记录数;

记录数:表示限定获取的最大记录数量。仅含此参数时,表示从第 1 条记录开始获取。

OFFSET:表示偏移量,用于设置从哪条记录开始,默认第 1 条记录的偏移量值为 0,第 2 条记录的偏移量值为 1,依次类推。

限制记录数:查询 sh_goods 表中价格最贵的商品

mysql> SELECT id, name, price FROM sh_goods

    -> ORDER BY price DESC LIMIT 1;

+----+------------+---------+

| id | name | price |

+----+------------+---------+

| 4 | | 5999.00 |

+----+------------+---------+

1 row in set (0.00 sec)

获取指定区间的记录数:从第 1 条记录开始的 5 条商品记录

mysql> SELECT id, name, price FROM sh_goods LIMIT 0, 5;

+----+------------+---------+

| id | name       | price   |

+----+------------+---------+

|  1 |   |    0.50 |

|  2 |  |   15.00 |

|  3 |   |    1.00 |

|  4 |   | 5999.00 |

|  5 |  | 1999.00 |

+----+------------+---------+

5 rows in set (0.00 sec)

在 MySQL 中除了对查询记录进行排序和限量外,对数据表中记录的更新与删除操作也可以进行排序和限量。

数据更新的排序与限量

UPDATE 数据表名 SET 字段=新值, … [WHERE 条件表达式]

ORDER BY 字段 ASC|DESC LIMIT 记录数;

数据删除的排序与限量

DELETE FROM 数据表名 [WHERE 条件表达式]

ORDER BY 字段 ASC|DESC LIMIT 记录数;

排序后限量更新或删除数据

UPDATE 和 DELETE 操作中添加 ORDER BY 表示根据指定的字段,按顺序更新或删除符合条件的记录。

如果 UPDATE 和 DELETE 操作没有添加 WHERE 条件,则可以使用 LIMIT 来限制更新和删除的数量。


发布于: 2021 年 03 月 28 日阅读数: 9
用户头像

在即

关注

还未添加个人签名 2021.02.27 加入

还未添加个人简介

评论

发布
暂无评论
限量