MySQL中如何实现select top n

MySQL中如何实现select top n,第1张

没有系统学习过mysql,今日想查询前n条记录,习惯性的输入sqlserver的selecttop n的形式语句,报错,一查,原来mysql通过limit可以实现相关功能,而且功能更加强大,GOOD。以下是limit在mysql中的使用详解:语法:SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offsetLIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数。LIMIT 接受一个或两个数字参数。参数必须是一个整数常量。如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。初始记录行的偏移量是 0(而不是 1): 为了与 PostgreSQL 兼容,MySQL 也支持句法: LIMIT # OFFSET #。mysql>SELECT * FROM table LIMIT 5,10// 检索记录行 6-15 ,注意,10为偏移量//为了检索从某一个偏移量到记录集的结束所有的记录行,可以指定第二个参数为 -1:mysql>SELECT * FROM table LIMIT 95,-1// 检索记录行 96-last.//如果只给定一个参数,它表示返回最大的记录行数目:mysql>SELECT * FROM table LIMIT 5//检索前 5 个记录行 //也就是说,LIMIT n 等价于 LIMIT 0,n。

-- 打开sql 执行记录功能

set global log_output='TABLE'-- 输出到表

set global log=ON -- 打开所有命令

执行记录功能general_log, 所有语句: 成功和未成功的.

set global log_slow_queries=ON -- 打开慢查询 sql 记录

slow_log, 执行成功的: 慢查询语句和未使用索引的语句

set global long_query_time=0.1 -- 慢查询时间限制(秒)

set global log_queries_not_using_indexes=ON -- 记录未使用索引的sql 语句

-- 查询sql 执行记录

select * from mysql.slow_log order by 1 -- 执行成功的:慢查询语句,和未

使用索引的语句

select * from mysql.general_log order by 1 -- 所有语句: 成功和未成功的.-- 关闭sql 执行记


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/8563716.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-18
下一篇2023-04-18

发表评论

登录后才能评论

评论列表(0条)

    保存