zoukankan      html  css  js  c++  java
  • case substring

    一、case函数

    1.简单函数:枚举这个字段所有可能的值。适合枚举值为固定的值。

    (1)语法

    case column

      when condition_1 then result_1

      when condition_2 then result_2

      when condition_3 then result_3

      ......

      else result_4

    end

    (2)示例

    mysql> SELECT * FROM case_demo;
    +----+------+-----+
    | id | name | sex |
    +----+------+-----+
    | 1 | 张三 | 1 |
    | 2 | 李四 | 1 |
    | 3 | 小花 | 2 |
    | 4 | 小明 | 1 |
    | 5 | 小彭 | 1 |
    | 6 | 小玲 | 2 |
    | 7 | 小灵 | 2 |
    | 8 | 小荷 | 2 |
    +----+------+-----+

    mysql> SELECT name,
    -> CASE sex
    -> WHEN 1 THEN '男'
    -> WHEN 2 THEN '女'
    -> END AS sex
    -> FROM case_demo;
    +------+-----+
    | name | sex |
    +------+-----+
    | 张三 | 男 |
    | 李四 | 男 |
    | 小花 | 女 |
    | 小明 | 男 |
    | 小彭 | 男 |
    | 小玲 | 女 |
    | 小灵 | 女 |
    | 小荷 | 女 |
    +------+-----+

    2.搜索函数:可以写判断,并且搜索函数只会返回第一个符合条件的值,其他case被忽略。适应表达式与一组不同的值进行匹配,枚举值不为固定值,而是一组范围

    (1)语法

    case 

      when condition_1 then result_1

      when condition_2 then result_2

      when condition_3 then result_3

      ......

      else result_4

    end

    (2)示例

    mysql> SELECT * FROM grade_demo;

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

    | id | name | grade |

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

    |  1 | 小明 | 60.5  |

    |  2 | 小明 | 60    |

    |  3 | 小麦 | 78    |

    |  4 | 小霞 | 80.5  |

    |  5 | 小恒 | 90    |

    |  6 | 小荷 | 98.5  |

    |  7 | 小玲 | 40.8  |

    |  8 | 小何 | 55.9  |

    |  9 | 小格 | 70    |

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

      

    mysql> SELECT name,

        -> CASE 

        -> WHEN grade >=90 THEN '优秀'

        -> WHEN grade >=70 THEN '良好'

        -> WHEN grade >=60 THEN '及格'

        -> ELSE '不及格'

        -> END AS '分数评级'

        -> FROM grade_demo;

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

    | name | 分数评级 |

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

    | 小明 | 及格     |

    | 小明 | 及格     |

    | 小麦 | 良好     |

    | 小霞 | 良好     |

    | 小恒 | 优秀     |

    | 小荷 | 优秀     |

    | 小玲 | 不及格   |

    | 小何 | 不及格   |

    | 小格 | 良好     |

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

    mysql> SELECT name,

    -> CASE
    -> WHEN sex = 1 THEN '男'
    -> WHEN sex = 2 THEN '女'
    -> END AS sex
    -> FROM case_demo;
    +------+-----+
    | name | sex |
    +------+-----+
    | 张三 | 男 |
    | 李四 | 男 |
    | 小花 | 女 |
    | 小明 | 男 |
    | 小彭 | 男 |
    | 小玲 | 女 |
    | 小灵 | 女 |
    | 小荷 | 女 |
    +------+-----+

    二、substring函数

    (1)语法

    • substring(string,postion,length)
    • subtring(string from position for length)

    string:是要提取子字符串的字符串。

    position:是一个整数,用于指定子串的起始字符,position可以是正或负整数。

         如果position为正,则SUBSTRING函数从字符串的开始处提取子字符串。请参阅以下字符串。

         如果position参数为零,则SUBSTRING函数返回一个空字符串。

         如果position为负,则SUBSTRING函数从字符串的结尾处开始,提取子字符串。

    length:length是一个正整数,用于指定子字符串的字符数。

              如果position和length的总和大于字符串的字符数,则SUBSTRING函数将返回一个从位置开始到字符串末尾的子串。

              如果length被省略,SUBSTRING函数将返回一个从起始位置到字符串末尾的子串。

    (2)示例

    mysql> SELECT SUBSTRING('mysql substring',2,6);

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

    | SUBSTRING('mysql substring',2,6) |

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

    | ysql s                           | 

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

    mysql> SELECT SUBSTRING('mysql substring',6,4);

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

    | SUBSTRING('mysql substring',6,4) |

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

    |  sub                             |

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

    mysql> SELECT SUBSTRING('mysql substring',6,15);

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

    | SUBSTRING('mysql substring',6,15) |

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

    |  substring                        |

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

    mysql> SELECT SUBSTRING('mysql substring',6);

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

    | SUBSTRING('mysql substring',6) |

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

    |  substring                     |

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

    mysql> SELECT SUBSTRING('mysql substring',0,1);

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

    | SUBSTRING('mysql substring',0,1) |

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

    |                                  |

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

    mysql> SELECT SUBSTRING('mysql substring',0);

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

    | SUBSTRING('mysql substring',0) |

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

    |                                |

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

  • 相关阅读:
    CentOS配置sshd
    求逆元 HDU 2516
    求逆元
    二分图的最大匹配
    博弈1
    几何多边形面积交模板
    LAMP服务器的搭建
    扩展欧几里得
    cf780c
    利用栈的逆波兰表达式
  • 原文地址:https://www.cnblogs.com/aczy/p/10930743.html
Copyright © 2011-2022 走看看