MySQL 分页查询和存储过程
一、分页查询
使用limit函数,limit关键字的用法:
LIMIT [offset,] rows;
offset指定要返回的第一行的偏移量,rows第二个指定返回行的最大数目。初始行的偏移量是0(不是1)。
例:分别取前40条数据和后40条数据
0-起始个数 40-查询个数
--第一页 (1-1)*40,40
select * from table_name limit 0,40
--第二页 (2-1)*40,40
select * from table_name limit 40,80 --此处后面的5代指个数
--第三页 (3-1)*40,40
二、存储过程
特点:1、适合需要长期保存在数据库中
2、需要被多个用户重复调用
3、业务逻辑相同,参数不同
4、大批量的数据的操作、插入、修改和删除
与函数的区别:
1、函数只能返回一个值,且必须设置返回值,在存储过程可以返回多个值。
2、最大的区别:函数要放入sql语句或者某个表达式进行调用,而存储过程可以独立执行且不能被sql语句调用,直接通过call或者declare直接执行。
1、无参
create procedure pd_selectAll3()
begin
select * from student;
end;
--调用
call pd_selectAll3();
2、带参数
create procedure pd_findByid(in sid int) --此处参数格式与Oracle不同
begin
select * from student where id=sid;
end;
--调用
call pd_findByid(2);
3、带输出
首先说一下,查看全局变量:
show variables; --查看全局变量
set对属性进行赋值操作:
set @name2='abc';
select @name2;
执行结果:abc
4、参数带输出
--带输出
create procedure pd_testout(out str varchar(20))
begin
select str11;
--set是赋值
set str11='今晚吃鸡’;
end;
--调用
call pd_testout(@vount2);
select @vout2;
执行结果:今晚吃鸡
5、参数既是输出也是输入
--既是输出也是输入 inout
create procedure pd_testinout(inout str12 varchar(20))
begin
select str12;
--set是赋值
set str12='666’;
end;
--调用
set @str=123; --输入
call pd_testinout(@str);
select @str; --输出
执行结果:123
MySQL 分页查询和存储过程的更多相关文章
- MySQL分页查询存储过程
-- 分页查询delimiter $create procedure p_List(in i_Name varchar(50),in i_CName varchar(20),in pageIndex ...
- (记录)mysql分页查询,参数化过程的坑
在最近的工作中,由于历史遗留,一个分页查询没有参数化,被查出来有sql注入危险,所以对这个查询进行了参数化修改. 一看不知道,看了吓一跳,可能由于种种原因,分页查询sql是在存储过程中拼接出来的,wh ...
- mysql 分页查询
mysql,; : mysql,; -last. //如果只给定一个参数,它表示返回最大的记录行数目: mysql; 个记录行 ,n. 动态传参的分页查询 SELECT * FROM table LI ...
- sql连表分页查询(存储过程)
1.平时分页查询都比较多针对一个表的数据 而这个分页查询是针对连表查询的 ,这也是我网上改版别人的sql语句 先在数据库新建一个存储过程 拷贝以下代码 CREATE PROCEDURE [dbo].[ ...
- mysql分页查询详解
我们做的后端项目一般都会有admin管理端,当管理端将要展示数据的时候,就需要用到分页.所以分页的考查在面试中也相当多.在mysql中进行分页查询时,一般会使用limit查询,而且通常查询中都会使用o ...
- Java GUI+mysql+分页查询
1.要求 : 创建一个学生信息管理数据库 2.实现分页查询 代码如下: a)学生实体类: /** * @author: Annie * @date:2016年6月23日 * @description: ...
- Mysql分页查询性能分析
[PS:原文手打,转载说明出处,博客园] 前言 看过一堆的百度,最终还是自己做了一次实验,本文基于Mysql5.7.17版本,Mysql引擎为InnoDB,编码为utf8,排序规则为utf8_gene ...
- MySql分页查询慢|这里告诉你答案
一.背景 我们在开发的过程中使用分页是不可避免的,通常情况下我们的做法是使用limit加偏移量:select * from table where column=xxx order by xxx li ...
- MySQL分页查询性能优化
当需要从数据库查询的表有上万条记录的时候,一次性查询所有结果会变得很慢,特别是随着数据量的增加特别明显,这时需要使用分页查询.对于数据库分页查询,也有很多种方法和优化的点.下面简单说一下我知道的一些方 ...
随机推荐
- (转载)Unity里实现更换游戏对象材质球
在unity中本来想实现在一个背景墙上更换图片的功能 在网上查了一些资料说是用Image,但我是新手小白刚接触Unity不久好多组建还不会用,就想能不能通过改变游戏对象的材质球来更换游戏对象的背景. ...
- jenkins 异常
八月 03, 2017 7:23:54 下午 org.eclipse.jetty.util.log.JavaUtilLog warn 警告: FAILED ServerConnector@29e6eb ...
- _event_spawn
EventId 事件ID Entry 刷新生物或物体的entry,正数为生物,负数为物体 Phase 刷新生物或物体的阶段ID SpawnTime 刷新生物或物体的时间(单位:秒),从阶段开始时开始计 ...
- jmeter3.2 版本完美实现Load Test报表
今天下载了最新版的apache tomcat jmeter 3.2,需要jdk1.8以上的版本. 用非GUI模式运行压力测试后,出现的报表太完美了. 将jmx脚本放在就jmeter_home/bin下 ...
- dll多个版本问题
在配置文件设置不同版本的dll即可 配置文件如下 configuration 节点下面的 runtime 节点新增各个版本配置内容 <runtime> <assemblyBindi ...
- java 之2D过气游戏类的写法
2D游戏中各对象的父类 package cn.littlepage.game; import java.awt.Graphics; import java.awt.Image; import java ...
- oracle listagg和wm_concat函数
对于将一列多值合并成一行问题,oracle提供了wmsys.wm_concat和listagg函数处理此问题,下面我们以emp表中数据为例,看看两函数的使用方法 假设我们需要统计每种job下面有哪些员 ...
- hive表的存储路径查找以及表的大小
1.在hive中知道一个表的存储路径可以通过hive命令 desc formatted table_name 显示表的详细信息; 2.然后找到该表的存储路径 "Location: ...
- DRF框架固定配置
1.认证Authentication 可以在配置文件中配置全局默认的认证方案 REST_FRAMEWORK = { 'DEFAULT_AUTHENTICATION_CLASSES': ( 'rest_ ...
- isA,小赋值大
class Student:Person{ }; Student s; 1. Person p=s; // 可以将具体的赋值给大的,指针也行. 2. Person * p=new Student; ...