MySQL函数学习(五)—–流程控制函数

md函数笔记五

注:笔记旨在记录

五、MySQL 流程控制函数

\ 函 数 名 称 作 用 完 成 1 IF

条件判断 勾 2 IFNULL

判空判断 勾 3 CASE

求数量 勾

0.

0.1 num表:

CREATE TABLE anyot.Untitled  (
id varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
rand_int_num int NULL DEFAULT NULL,
rand_decimal_num decimal(65, 2) NULL DEFAULT NULL,
rand_string_num varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;

MySQL函数学习(五)-----流程控制函数

1. IF() — 条件判断

1.1. 函数:

  • IF(expr1,expr2,expr3) : expr1为判断条件,符合则返回expr2,否则expr3

1.2. sql示例:

SELECT rand_int_num,IF(rand_int_num < 15,"&#x221A;","&#xD7;") from num

MySQL函数学习(五)-----流程控制函数

2. IFNULL() — 判空判断

2.1. 函数:

  • IFNULL(expr1,expr2) :expr1为判断的值或字段,为空则返回expr2

2.2. sql示例:

SELECT rand_int_num,IFNULL(rand_int_num,"&#x221A;") from num

MySQL函数学习(五)-----流程控制函数

3. CASE — 求总数

3.1. 函数:

注: case结合when,else,end使用;其中else可以省略,但end一定要加。

  • 写法一:
  CASE case_value
      WHEN when_value THEN statement_list
      WHEN ...

      ELSE statement_list
  END;
  • 写法二:
  CASE
      WHEN expr1 THEN statement_list
      WHEN ...

      ELSE statement_list
  END;

3.2. sql示例:

  • 写法一:
  SELECT rand_int_num,
  CASE rand_int_num
      WHEN 14 THEN " == 14"
      WHEN 44 THEN " == 44"
      ELSE " != 14"
  END as is14
  from num

MySQL函数学习(五)-----流程控制函数
  • 写法二:
  SELECT rand_int_num,
  CASE WHEN rand_int_num = 14 THEN " == 14"
      ELSE " != 14"
  END as is14 ,rand_string_num,
  CASE WHEN rand_string_num = "a99" THEN " == a99"
      ELSE " != a99"
  END as isa99 from num

MySQL函数学习(五)-----流程控制函数
    SELECT CASE
        WHEN WEEKDAY(NOW())=0 THEN '&#x661F;&#x671F;&#x4E00;'
        WHEN WEEKDAY(NOW())=1 THEN '&#x661F;&#x671F;&#x4E8C;'
        WHEN WEEKDAY(NOW())=2 THEN '&#x661F;&#x671F;&#x4E09;'
        WHEN WEEKDAY(NOW())=3 THEN '&#x661F;&#x671F;&#x56DB;'
        WHEN WEEKDAY(NOW())=4 THEN '&#x661F;&#x671F;&#x4E94;'
        WHEN WEEKDAY(NOW())=5 THEN '&#x661F;&#x671F;&#x516D;'
        WHEN WEEKDAY(NOW())=6 THEN '&#x661F;&#x671F;&#x5929;'
    END AS COLUMN1,NOW(),WEEKDAY(NOW()),DAYNAME(NOW());

MySQL函数学习(五)-----流程控制函数

Original: https://www.cnblogs.com/hmpn/p/16474020.html
Author: hmpn
Title: MySQL函数学习(五)—–流程控制函数

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/621024/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • Dubbo源码(九)-服务调用过程

    前言 本文基于Dubbo2.6.x版本,中文注释版源码已上传github:xiaoguyu/dubbo 源码分析均基于官方Demo,路径:dubbo/dubbo-demo 如果没有…

    数据库 2023年6月11日
    0140
  • Nginx基础入门篇(3)—返回状态码详解

    一般常见返回状态码 200 – &#x670D;&#x52A1;&#x5668;&#x6210;&#x529F;&#x8FD4;&a…

    数据库 2023年6月14日
    0219
  • LeetCode 14. 最长公共前缀

    编写一个函数来查找字符串数组中的最长公共前缀。 如果不存在公共前缀,返回空字符串 “”。 示例 1: 输入:strs = [“flower&#8…

    数据库 2023年6月11日
    092
  • 博客怎么写才能更安全和简洁

    前言 博客实现本地存储 Markdown语法的介绍 博客对于我们普通人来说就是为了更好的去实现个人知识的一个整理融合然后把知识共享可以帮助其他去实现自己的一些工作或者学习中的一些疑…

    数据库 2023年6月6日
    0118
  • 第07章 MySQL单行函数

    第07章 MySQL单行函数 1. 函数的理解 1.1 什么是函数 函数在计算机语言的使用中贯穿始终,函数的作用是什么呢?它可以把我们经常使用的代码封装起来,需要的时候直接调用即可…

    数据库 2023年5月24日
    095
  • RadonDB MySQL on K8s 2.1.2 发布!

    RadonDB MySQL on Kubernetes 于 2 月 17 日发布了新版本 2.1.2 。该版本在节点的重建、增删等方面进行了全面升级。致谢: 首先感谢 @andyl…

    数据库 2023年5月24日
    0106
  • 总结:弹性伸缩的五个条件与六个教训

    前言弹性伸缩是云计算时代给我们带来的一项核心技术红利,但是 IT 的世界中,没有一个系统功能可以不假思索的应用到所有的场景中。这篇文章,我们将应用企业级分布式应用服务-EDAS 的…

    数据库 2023年6月15日
    0166
  • 史上最全面的mysql数据库下载安装教程(适合初学者)

    Original: https://www.cnblogs.com/chaichaichai/p/15330533.htmlAuthor: 牛仔码农Title: 史上最全面的mys…

    数据库 2023年5月24日
    0134
  • 非华为电脑开启多屏协同

    非华为电脑开启多屏协同 配置 windows 10系统(五代i7的辣鸡配置) WIFI、蓝牙(网上说需要5GHz,但本人的电脑是2.4G的也是有效) 华为、荣耀手机(EMUI 10…

    数据库 2023年6月11日
    0145
  • 部署tomcat

    tomcat tomcat 一、tomcat是什么 二、tomcat部署 1.实现访问java测试网页 2.能够成功登录到tomcat首页中的host manager、server…

    数据库 2023年6月14日
    086
  • mysql主从搭建

    mysql主从搭建 环境:ubuntu20.04.1,mysql:8.0.22。主:192.168.87.3备:192.168.87.6 安装数据库 sudo apt-get in…

    数据库 2023年6月11日
    097
  • 达梦数据库_DM8配置MPP主备

    为了提高MPP系统可靠性,克服由于单节点故障导致整个系统不能继续正常工作,DM 在普通的MPP系统基础上,引入主备守护机制,将MPP节点作为主库节点,增加备库作为备份节点,必要时可…

    数据库 2023年6月11日
    0117
  • CSS进阶内容—浮动和定位详解

    CSS进阶内容—浮动和定位详解 我们在学习了CSS的基本知识和盒子之后,就该了解一下网页的整体构成了 当然如果没有学习之前的知识,可以到我的主页中查看之前的文章: CSS的三种布局…

    数据库 2023年6月14日
    0101
  • MySQL查询性能优化七种武器之链路追踪

    MySQL优化器可以生成Explain执行计划,我们可以通过执行计划查看是否使用了索引,使用了哪种索引? 但我们并不确切地知道为什么使用这个索引。 [En] But we don&…

    数据库 2023年5月24日
    0112
  • 分布式锁的实现

    什么是分布式锁? 为了保证一个方法或属性在高并发情况下的同一时间只能被同一个线程执行,在传统单体应用单机部署的情况下,可以使用Java并发处理相关的API(如ReentrantLo…

    数据库 2023年6月6日
    0137
  • mysql视图,索引

    一、视图 View 视图是一个 虚拟表,是sql语句的查询结果,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据,在使用视图时动态生成。视图的数据变化会影响到基…

    数据库 2023年6月9日
    086
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球