我是靠谱客的博主 简单高山,最近开发中收集的这篇文章主要介绍MySQL中的limit和union,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Limit的用法

从select语句的查询结果中返回其中一部分记录。
如:歌手大赛需要从所有参赛选手中找出成绩最好的前5名选手。
MySQL能够实现这样的功能吗?答案是肯定的。它为用户提供了limit来实现这一功能,即强制SELECT语句返回指定的记录数。

limit的语法:

select 列名 from 表名 limit [起始行号],返回行数

Limit的语法是这样的:
起始行号,表示要从查询结果的第几行开始截取记录。注意MySQL的行号是从0开始编号的,也就是说,第1行记录的行号是0, 返回行数表示返回记录行的最大数目。如:

SELECT * FROM TABLE LIMIT 5,10;

limit语句的作用就是返回查询结果中的第6行到15行记录。limit后的第一个 整数5表示从行号为5的记录开始截取,也就是从第6行开始,因为行号是从0开始编码的;第二个整数10表示limit总共要取出10行记录;

Limit后的第一个 参数“起始行号”参数可以省略,此时将从第1行开始返回记录,也就是从行号为0的记录开始。
如:

SELECT * FROM TABLE LIMIT 5;

查询结果中返回5条记录,从行号为0记录开始一直取到行号为4的记录为止

当limit的第二个参数为-1时,表示返回从起始行号到结束的所有记录

Limit的对效率的影响分析
当数据量很大井且起始行号较小时,使用limit能够避免全表扫描而提高查询效率;当数据量很大量并且起始行号较大时,仅用limit来限制提取行数会导致效率低下。

Union用法:

多个SELECT语句要能够进行Union操作必须满足以下条件:
一是每个查询语句的字段个数要相同
二是对应字段的类型要相同或者兼容
使用Union语句得到的查询结果的字段名称取第一个SELECT语句的字段名称。
Union用法:
默认情况下,UNION会把结果集中重复的记录删除;
如果想把所有记录都显示出来(包括重复记录)可以在UNION之后加上ALL关键字。这里的重复记录是指每个字段都完全相同的记录。

union用法

(SELECT 字段 from table)
UNION ALL
(SELECT 字段 FROM table2)
ORDER BY 字段 DESC

在这里插入图片描述

union将查询的姓李的和姓刘的表格放在一起
在这里插入图片描述

最后

以上就是简单高山为你收集整理的MySQL中的limit和union的全部内容,希望文章能够帮你解决MySQL中的limit和union所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(60)

评论列表共有 0 条评论

立即
投稿
返回
顶部