zoukankan      html  css  js  c++  java
  • MySQL 分页查询和存储过程

    一、分页查询

    使用limit函数,limit关键字的用法:

    LIMIT [offset,] rows;

    offset指定要返回的第一行的偏移量,rows第二个指定返回行的最大数目。初始行的偏移量是0(不是1)。

    例:分别取前40条数据和后40条数据

    1                                  0-起始个数  40-查询个数
    2                       --第一页     (1-1)*40,40
    3 select * from table_name limit 0,40 
    4                       --第二页     (2-1)*40,40
    5 select * from table_name limit 40,80  --此处后面的5代指个数
    6                       --第三页     (3-1)*40,40

    二、存储过程

    特点:1、适合需要长期保存在数据库中

       2、需要被多个用户重复调用

               3、业务逻辑相同,参数不同

               4、大批量的数据的操作、插入、修改和删除

    与函数的区别:

          1、函数只能返回一个值,且必须设置返回值,在存储过程可以返回多个值。

               2、最大的区别:函数要放入sql语句或者某个表达式进行调用,而存储过程可以独立执行且不能被sql语句调用,直接通过call或者declare直接执行。

    1、无参

    1 create procedure pd_selectAll3()
    2     begin
    3         select * from student;
    4     end;
    5 --调用
    6 call pd_selectAll3();

    2、带参数

    1 create procedure pd_findByid(in sid int)  --此处参数格式与Oracle不同
    2     begin
    3         select * from student where id=sid;
    4     end;
    5 --调用
    6 call pd_findByid(2);

    3、带输出

    首先说一下,查看全局变量:

    1 show variables;  --查看全局变量

    set对属性进行赋值操作:

    1 set @name2='abc';
    2 select @name2;

    执行结果:abc

    4、参数带输出

     1 --带输出
     2 create procedure pd_testout(out str varchar(20))
     3     begin
     4         select str11;
     5         --set是赋值
     6         set str11='今晚吃鸡’;
     7     end;
     8 --调用
     9 call pd_testout(@vount2);
    10 select @vout2;  

    执行结果:今晚吃鸡

    5、参数既是输出也是输入

     1 --既是输出也是输入 inout
     2 create procedure pd_testinout(inout str12 varchar(20))
     3     begin
     4         select str12;
     5         --set是赋值
     6         set str12='666’;
     7     end;
     8 --调用
     9 set @str=123;     --输入
    10 call pd_testinout(@str);
    11 select @str;        --输出

    执行结果:123

  • 相关阅读:
    第二阶段总结
    今日总结
    今日总结
    今日总结
    今日总结
    今日总结
    今日总结
    今日总结
    今日总结
    开学总结
  • 原文地址:https://www.cnblogs.com/echola/p/9550611.html
Copyright © 2011-2022 走看看