MySQL牛客刷题:查询结果限制返回行数

导读:本篇文章讲解 MySQL牛客刷题:查询结果限制返回行数,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

题目描述:

现在运营只需要查看前2个用户明细设备ID数据,请你从用户信息表 user_profile 中取出相应结果。

示例:

MySQL牛客刷题:查询结果限制返回行数

根据输入,你的查询应返回以下结果:

MySQL牛客刷题:查询结果限制返回行数

解题过程:

我写的是:

select device_id 
from user_profile
where id <= 2;

题解涨知识:

使用LIMIT限制结果集

LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数。
LIMIT 接受一个或两个数字参数。参数必须是一个整数常量。
如果只给定一个参数,它表示返回最大的记录行数目。
如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。
为了检索从某一个偏移量到记录集的结束所有的记录行,可以指定第二个参数为 -1。
初始记录行的偏移量是 0(而不是 1)。

例5.检索记录行 6-10

1

SELECT FROM table LIMIT 5,5

例6.检索记录行 11-last

1

SELECT FROM table LIMIT 10,-1

例7.检索前 5 个记录行

1

SELECT FROM table LIMIT 5

所以题解为:

1

SELECT  device_id FROM user_profile ORDER BY id LIMIT 2

效率问题:

select device_id from user_profile limit 0,2—运行效率更高

select device_id from user_profile limit 2 —运行效率低

也可结合 limit offset: 一起使用时,limit表示要取的数量,offset表示跳过的数量

select device_id from user_profile limit 2 offset 0 // 跳过0条,从第一条数据开始取,取两条数据 —运行效率中

MySQL和SQL service的不同

1.top不适用于所有的数据库语言。 1)SQL SERVER里可以使用。使用方式如下:

1

select top number/percent column(s) from user-profile;

2)在MySQL就不适用。在MySQL中使用的是limit。 本题解答:

1

select device_id from user_profile limit 2;

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/102950.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!