• MySQL使用IF语句以及用case语句对条件或结果进行判断


    MySQL使用IF语句以及用case语句对条件或结果进行判断


    一、前期准备

    CREATE TABLE `t1` (
      `id` int(11) NOT NULL AUTO_INCREMENT,
      `name` varchar(255) DEFAULT NULL,
      `jgid` int(11) DEFAULT NULL,
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8;
    
    INSERT INTO `avlicy`.`t1`(`id`, `name`, `jgid`) VALUES (1, '二二', 2);
    INSERT INTO `avlicy`.`t1`(`id`, `name`, `jgid`) VALUES (2, '李四', 2);
    INSERT INTO `avlicy`.`t1`(`id`, `name`, `jgid`) VALUES (4, '七七', 3);
    INSERT INTO `avlicy`.`t1`(`id`, `name`, `jgid`) VALUES (5, '小猕猴', 1);
    INSERT INTO `avlicy`.`t1`(`id`, `name`, `jgid`) VALUES (6, '小米粥', 1);
    INSERT INTO `avlicy`.`t1`(`id`, `name`, `jgid`) VALUES (7, '小哈吧', 1);
    
    

    二、IF语句

    1、场景一

    如果id是基数则是,否则则否

    SELECT
    	t1.*,
    	IF(MOD(t1.id,2)=0 ,'是','否') AS 是否被二整除
    FROM
    	t1
    

    在这里插入图片描述

    2、场景二

    如果id是偶数则判断id是否与jgid相等,如果Id是奇数则判断id是否与jgid不相等

    SELECT
    	t1.* 
    FROM
    	t1 
    WHERE
    IF( MOD ( t1.id, 2 )= 0, id = jgid, id <> jgid )
    

    在这里插入图片描述

    三、CASE语句

    根据jgid赋予不同的角色

    SELECT
    	*,
     CASE
    		WHEN jgid = 1 THEN
    		'学生' 
    		WHEN jgid = 2 THEN
    		'教师' 
    		WHEN jgid = 3 THEN
    		'家长' ELSE '' 
    	END AS '角色' 
    FROM
    	t1
    

    在这里插入图片描述

    1. 你是可爱的"小朋友,值得遇到最好的。
    2. 人安静的生活,哪怕是静静地听着风声,亦能感受到诗意的生活。
    3. 一个堕落到极致的人,如果哪天TA突然醒悟,必定一鸣惊人。
    4. 愿你以后也有人千里迢迢来看你,悄悄告诉你哪里的花开了。
    5. 自己生活贫乏的人,才喜欢刺探别人的私事。
    6. 别再去抱怨身边人善变,多懂一些道理,明一些事理,毕竟人越活越现实。
    7. 世界上最亮的光芒,一个是太阳,一个是你努力时的模样。
    8. 只有那些耐心完成简单工作的人,才能够轻而易举地完成困难的事。
    9. 人们依靠行动而活,而不是想法而活。
    10. 别辜负自己,走到今天真的不容易。
  • 相关阅读:
    Python 连接 Oracle 详解
    停止从 Kaggle 下载数据集(如果你不是初学者)
    三十分钟学会Hive
    OceanBase 在线与离线安装方式详解
    数组经典练习题,超配合教程的练习(四)
    linux之perf(2)list事件
    Spring 中 Bean 对象的存储和取出
    1.5 阻塞与非阻塞I/O
    GD32(4)存储管理
    从零到一,教你搭建「以文搜图」搜索服务(一)
  • 原文地址:https://blog.csdn.net/weixin_46146718/article/details/126951358