Mysql中limit用法及简单按序查寻示例

limit 接收一个或两个参数。

可以实现前排前几行的数据或排后几行的数据,或者中间几行的数据

order by + 关键字  表示按关键字什么顺序排列,默认是正序,从小到大,

order by + 关键字 desc 表示按倒序排列,从大到小顺序。

如:倒序排列取前几行数据:

order by id desc limit 10 按照id的倒序排序 取出前10条

order by id desc limit 0,10 按照id的倒序排序 取出前10条

换句话说,Limit n 等价于 Limit 0,n。

如:正序排列取中间几行数据,默认从0开始

order by id limit 5,10 表示按照id的正序排序 从第6条开始取10条,

即取出第6行到第15行数据

如:取出从某行到最后一行的数据:

可以指定第二个参数为 -1,表示到最后一行

SELECT * FROM table LIMIT 95,-1; 表示检索记录行从96行到文末最后一行的所有数据,

示例

(转载):

假设有一张数据库表user_info, 第一列为id,用作唯一标识;第二列为user_name,用户姓名;第三列是some_data,存储某数值,

找出这张表中,按第三列数值降序排列,排在前5的所有用户记录

解:

select * from user_info order by some_data desc limit 5;

但是可能有重复数据,用一下distinct 关键字

select * from user_info where some_data >=
(select distinct some_data from user_info order by some_data desc limit 4,1)
order by some_data desc;

原文地址:https://www.cnblogs.com/strivingforever/p/8543464.html

时间: 2024-11-05 11:56:14

Mysql中limit用法及简单按序查寻示例的相关文章

MYSQL中LIMIT用法

MYSQL中LIMIT用法 SELECT * FROM tableName LIMIT [offset,] rows; 1.select * from table limit m,n(显示条数) 其中m是指记录开始的索引index(索引是从0开始的表示第一条记录 ) n是指从第m+1条开始,取n条. 结果是检索记录第m+1行至(m+n)行记录,共取出n条记录 ex: SELECT * FROM 表名 limit 6,5; 结果:检索记录第7行至11行记录,共取出5条记录. 2.n可以被设置为-1

sqlserver row_number 类似 mysql中 limit 用法

select * from ( select row_number() over(ORDER BY inspecdate desc,inspectime DESC,itemorder asc ) as num, contentid,quesioncontext,tempid,tempname,itemid,itemtext,belongteam,teamname,inspecdate, inspectime,contenttext,createperson,newaddtime,updateti

MYSQL 中 LIMIT 用法

mapper文件中的sql: -------------------------------------------------------------------------------------------- (在实体类中定义的属性) start:从第几条记录开始. size:读取几条记录. select id="findAllUsers" parameterType="Map" resultType="entity.IUser">

Mysql中limit的用法详解

对比Oracle.SQL Server,个人感觉MySql的分页是最好用的,现在总结一下,写在这里. Mysql中limit的用法: 在我们使用查询语句的时候,经常要返回前几条或者中间某几行数据,这个时候怎么办呢?不用担心,mysql已经为我们提供了这样一个功能. SELECT * FROM table LIMIT [offset,] rows | rows OFFSET offset LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数. LIMIT 接受一个或两个数字参数.参数

mysql中limit与in不能同时使用的解决方式.

mysql中limit与in不能同时使用的解决方式. 分类: MySQL2011-10-31 13:53 1277人阅读 评论(0) 收藏 举报 mysqlsubquery MySQL5.1中子查询是不能使用LIMIT的,报错: "This version of MySQL doesn't yet support 'LIMIT & IN/ALL/ANY/SOME subquery' " 这样的语句是不能正确执行的.select * from message where id i

MySQL的limit用法及优化(转)

常规用法: 用法一: SELECT `keyword_rank`.* FROM `keyword_rank` WHERE (advertiserid='59') LIMIT 2 OFFSET 1; 比如这个SQL ,limit后面跟的是2条数据,offset后面是从第1条开始读取. 用法二: SELECT `keyword_rank`.* FROM `keyword_rank` WHERE (advertiserid='59') LIMIT 2,1; 而这个SQL,limit后面是从第2条开始读

Mysql 中explain用法

explain显示了MySQL如何使用索引来处理select语句以及连接表.可以帮助选择更好的索引和写出更优化的查询语句. 先解析一条sql语句,看出现什么内容 EXPLAINSELECTs.uid,s.username,s.name,f.email,f.mobile,f.phone,f.postalcode,f.addressFROM uchome_space ASs,uchome_spacefieldASfWHERE 1 AND s.groupid=0AND s.uid=f.uid 1. i

mysql中limit的用法详解[数据分页常用]

在我们使用查询语句的时候,经常要返回前几条或者中间某几行数据,这个时候怎么办呢?不用担心,mysql已经为我们提供了这样一个功能. SELECT * FROM table  LIMIT [offset,] rows | rows OFFSET offset LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数.LIMIT 接受一个或两个数字参数.参数必须是一个整数常量.如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目.初始记录行的偏移量是

mysql中-e用法

实际应用中,不仅可以先登陆mysql再使用,还可以在链接的时候进行sql操作,此时需要加参数-e 例: >mysql -hlocalhost -P8080 -uroot -p123456 -e'set names utf8;use report;select * from table;'; 就是这样,-e中的语句需要用封号来分割.