有时我们需要使用多个语句来共同完成一项任务。但如果前一个语句的执行结果不能被保存并传递给后续的语句,那很有可能会前功尽弃的。基于这样的现实需要,MySQL中就有了用户变量,或者说自定义变量。

select @max_tid:=max(t_id) from test1;

上面这一个语句可以从test1表中,查询出t_id字段的最大值,并将它保存到@max_tid变量中。这个@max_tid变量就是一个用户变量。

且看执行效果:

mysql> select @max_tid:=max(t_id) from test1;

+---------------------+

| @max_tid:=max(t_id) |

+---------------------+

|                   3 |

+---------------------+

1 row in set (0.00 sec)

然后再看看@max_tid中的值是多少:

mysql> select @max_tid;

+----------+

| @max_tid |

+----------+

|        3 |

+----------+

1 row in set (0.00 sec)

结果说明,已经将max(t_id)的计算结果成功的保存到@max_tid中去了。

利用用户变量,我们可以完美的将多个语句前后关联起来,组成一段功能强大的SQL语句,从而结束SQL语句一直以来“单打独斗”的寰常

关于MySQL中使用用户自定义变量,本文就介绍这么多,希望对大家有所帮助,谢谢!

03-15 11:14