Mysql的函数使用方法
今天有点临时需求要计算一张表的结果,不想写代码,想到了mysql的自定义函数。碰到了很多问题,为了方便一下使用,在此记录一下。 需求:一张表中,有比分,需要查询出比赛id和比赛结果。 分析: 单表查询没啥的,困难就困难在怎么判断比分之后返回想要的结果。 这里我把比赛结果分别定义代号,1主场胜、2平局、3客场胜 函数逻辑: 接收两个参数,判断参数的大小,分别返回结果。 实现: Navicat操作: navicat for mysql 工具内--创建函数 这里分别是存储过程和函数,我们选择函数 设置参数,这里的参数是接收的参数,例如 count(id) 接收一个参数 下一步,设置返回类型 点击完成即可。会出现以下界面 现在开始在BEGIN ..END;;中间写逻辑,具体语法需要百度。 我这里主要是if...elseif..else的逻辑,代码如下: 保存--getMatchResult。如果语法有错误,保存会报错,根据提示信息去查找错误。 使用函数: 我这里为了方便,直接写了两个参数,结果跟预想一样。 第一个参数是主场分数,第二个参数是客场分数, 3表示客场胜。 Mysql 创建函数 进入mysql shell,因为中间有很多分号,所以需要使用delimiter分界。该命令表示,把默认的分号执行改成其他符号执行。 这里使用demiter修改分解符为// ,如果还是使用分号分界则报错了