今天有点临时需求要计算一张表的结果,不想写代码,想到了mysql的自定义函数。碰到了很多问题,为了方便一下使用,在此记录一下。


需求:一张表中,有比分,需要查询出比赛id和比赛结果。
分析:
    单表查询没啥的,困难就困难在怎么判断比分之后返回想要的结果。
    这里我把比赛结果分别定义代号,1主场胜、2平局、3客场胜
    函数逻辑:
           接收两个参数,判断参数的大小,分别返回结果。

实现:

Navicat操作:

            navicat for mysql 工具内--创建函数
        
    
    这里分别是存储过程和函数,我们选择函数
    

    设置参数,这里的参数是接收的参数,例如 count(id) 接收一个参数
    

    下一步,设置返回类型
    
    点击完成即可。会出现以下界面
    
    
    现在开始在BEGIN ..END;;中间写逻辑,具体语法需要百度。

    我这里主要是if...elseif..else的逻辑,代码如下:
    

    保存--getMatchResult。如果语法有错误,保存会报错,根据提示信息去查找错误。
    

    使用函数:
    我这里为了方便,直接写了两个参数,结果跟预想一样。  第一个参数是主场分数,第二个参数是客场分数,3表示客场胜。
    
    

Mysql 创建函数

    进入mysql shell,因为中间有很多分号,所以需要使用delimiter分界。该命令表示,把默认的分号执行改成其他符号执行。
    
    
    这里使用demiter修改分解符为// ,如果还是使用分号分界则报错了。使用//分界执行后,显示正常。

    创建函数(注意使用//分界)
    
    
    使用函数
    分号结尾没效果,必须要用// ,除非退出mysql shell重新登录。返回结果是我们需要的,第2个参数为客场。3表示客场胜。
    

到此简单试用完成,临时查询很方便。



    

Mysql的函数使用方法的更多相关文章

  1. mysql find_in_set 函数 使用方法

    mysql> select * from user; +------+----------+-----------+ | id | name | address | +------+------ ...

  2. MySQL - FIND_IN_SET 函数使用方法

    SELECT * FROM xxxTableName x WHERE FIND_IN_SET(x.id, '1,2,3,4,5,6,7,8');   如上查询,意为:xxxTableName 表中 x ...

  3. MySQL concat函数的使用

    MySQL concat函数是MySQL数据库中众多的函数之一,下文将对MySQL concat函数的语法和使用进行说明,供您参考和学习. MySQL concat函数使用方法:CONCAT(str1 ...

  4. [转载]MySQL concat函数的使用

    MySQL concat函数是MySQL数据库中众多的函数之一,下文将对MySQL concat函数的语法和使用进行说明,供您参考和学习. MySQL concat函数使用方法:CONCAT(str1 ...

  5. Mysql时间函数

    http://blog.sina.com.cn/s/blog_6d39dc6f0100m7eo.html mysql中函数和关键字不区分大小写.下文函数的datetime参数处既可以用时间字符串也可以 ...

  6. php mysql 中文乱码解决方法

    本文章向码农们介绍php mysql 中文乱码解决方法,对码农们非常实用,需要的码农可以参考一下. 从MySQL 4.1开始引入多语言的支持,但是用PHP插入的中文会出现乱码.无论用什么编码也不行 解 ...

  7. MySQL修改时区的方法小结

    这篇文章主要介绍了MySQL修改时区的方法,总结分析了三种常见的MySQL时区修改技巧,包括命令行模式.配置文件方式及代码方式,需要的朋友可以参考下 方法一:通过mysql命令行模式下动态修改 1.1 ...

  8. Mysql group_concat函数被截断的问题

    mysql group_concat函数被截断的问题   MySQL的 group_concat 函数默认返回1024个字节长度,超过长度的会被截断.最近程序中就遇到这个问题了. 通过如下命令可以查看 ...

  9. MySQL 数学函数

    MySQL 数学函数 所有的数学函数在发生错误的情况下,均返回 NULL. -元减.改变参数的符号 mysql> SELECT - 2; -> -2 注意,如果这个操作符被用于一个 BIG ...

随机推荐

  1. uva 567

    Floyd 算法   就输入麻烦点 #include <iostream> #include <cstring> #include <cstdlib> #inclu ...

  2. 一个比较全面的DJANGO_REST_FRAMEWORK的CASE

    验证啊,过滤啊,hypermedia as the engine of ap‐plication state (HATEOAS)啊都有的. urls.py __author__ = 'sahara' ...

  3. Android GridView、ListView、ScrollView上下拉刷新

    实现方法是将显示的内容最外层的ViewGroup做成一个LinearLayout,并扩展它,使其可以上下拖动. 重点是实现View的onTouch方法. 下载:http://files.cnblogs ...

  4. linux xxd 命令

    http://www.cnblogs.com/openix/archive/2012/04/23/2466320.html xxd -i dht.jpg dht.h

  5. Linux下Nginx+Tomcat整合的安装与配置

    因为nginx处理静态页面的速度很快,并且是免费的,它还可以配置负载均衡的服务器集群来搭建多个tomcat,所以nginx+tomcat是企业搭 建javaee项目很好的选择.nginx主要是通过反向 ...

  6. Android:activity跳转过渡效果

    放在startActivity(intent);后面 overridePendingTransition(android.R.anim.fade_in,android.R.anim.fade_out) ...

  7. DNS安全浅议、域名A记录(ANAME),MX记录,CNAME记录(转)

    http://www.cnblogs.com/LittleHann/p/3828927.html 相关学习资料 http://baike.baidu.com/link?url=77B3BYIuVsB3 ...

  8. android开发无障碍app

    最近做一些为盲人提供服务的APP,还是挺有感触的,感谢手机和互联网的普及,他们的生活比以前丰富了很多. 通过读屏软件,盲人可以操作手机,上网浏览信息.读屏软件的工作原理很简单,就是读出屏幕上按钮.文本 ...

  9. API HOOK技术

    API HOOK技术是一种用于改变API执行结果的技术,Microsoft 自身也在Windows操作系统里面使用了这个技术,如Windows兼容模式等. API HOOK 技术并不是计算机病毒专有技 ...

  10. poj 2524 Ubiquitous Religions (并查集)

    题目:http://poj.org/problem?id=2524 题意:问一个大学里学生的宗教,通过问一个学生可以知道另一个学生是不是跟他信仰同样的宗教.问学校里最多可能有多少个宗教. 也就是给定一 ...