欢迎光临
我们一直在努力

mysql存储过程如何变量赋值

小编给大家分享一下mysql存储过程如何变量赋值,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

方法:1、利用set语句变量赋值,语法为“set 变量名=值或赋值语句”;2、利用查询语句和into关键字变量赋值,语法为“SELECT c1, c2…INTO @v1, @v2…FROM 表名 WHERE condition”。

本教程操作环境:windows10系统、mysql8.0.22版本、Dell G3电脑。

mysql存储过程如何变量赋值

MySQL变量赋值就一个坑。这个坑有两种填法。

第一种是众所周知的:set 变量名=值/赋值语句

第二种是:select … into 变量名 …; 或者 select … into 变量名;

第一种,我在网上看很多人说变量名前面要加@符合,但是实际上是不必要的,只有一些特殊情况是必须要@符合,大部分时候不加也不影响存储过程的使用的。

例如:

set g_grant_ex='gamedb.tb_exchange_';
set @g_grant_ex='gamedb.tb_exchange_';
/*这其实是一样的效果*/

第二种,这个就更坑了。我之前看别人用的是云里雾里。后来动手试了几次才发现。。。。。。。蛮好用的~例子如下

列如:

1.select count(*) into g_err from information_schema.TABLES t where t.TABLE_SCHEMA='gamedb' and t.TABLE_NAME=concat('tb_recharge_',g_year);
2.select count(*) from information_schema.TABLES t where t.TABLE_SCHEMA='gamedb' and t.TABLE_NAME=concat('tb_recharge_',g_year) into g_err;
/*这两个效果也是一样的*/

以上是“mysql存储过程如何变量赋值”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注云搜网行业资讯频道!

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。