zoukankan      html  css  js  c++  java
  • python与mysql部分函数和控制流语法对比

    条件语句

    python语法

    a=int(input("输入一个数[0,100]成绩:"))
    if 100>=a>=90:
        print("")
    elif 90>a>=80:
        print("")
    elif 80>a>=60:
        print("")
    else:
        print("不及格")

    嵌套用法:

    print("输入一个数:")
    num=int(input())
    if num>=0:
        if num<=20:
            print("[0,20]")
        else:
            print(">20")
    else:
        if num>=-10:
            print("(-10,0)")
        else:
            print("<=-10")

    mysql语法

    if 条件表达式 then
    语句块1;
    elseif 表达式2 then
    语句块2;
    elseif 表达式3 then
    语句块3;
    else 语句块n;
    end if  

     例

    CREATE DEFINER=`root`@`localhost` PROCEDURE `pTest`()
    BEGIN 
          DECLARE vHour INT;
          SET vHour =60;
          IF vHour>70 THEN
              SELECT '加班超多';
          ELSEIF vHour> 50 AND vHour<=70  THEN
              SELECT '加班多';
          ELSEIF vHour >40 AND vHour<=50 THEN
              SELECT '有加班';
          ELSE 
              SELECT '没加班';
          END IF;
    END
    

      case语句在存储过程中的用法1

    case a
    	when 1 then 语句块1;
    	when 2 then 语句块2;
    	else 语句块n;
    end case;
    

      例

    CREATE PROCEDURE pCase()
       BEGIN 
          DECLARE  job CHAR(50);
          SET job ='a';
          CASE job
          WHEN 'a' THEN SELECT '工作是经理';
          WHEN 'b' THEN SELECT '工作是财务';
          WHEN 'c' THEN SELECT '工作是人事';
          WHEN 'd' THEN SELECT '工作是行政';
          ELSE SELECT '是其它工作';
          END CASE;
    END;
    

      case语句在存储过程中的用法2

    case 
      when a=1 then 语句块1;
      when a=2 then 语句块2;
      else 语句块n;
    end case;
    

      循还语句

    mysql的while循还

    while 条件表达式
    	do 循环体;
    	
    end while;
    

      例

    CREATE  PROCEDURE pWhile()
    BEGIN 
          DECLARE vNum INT;
          SET vNum = 0;
          WHILE vNum<20 DO
    		SET vNum= vNum + 1;
    	
          END WHILE;
         SELECT vNum;
    END
    

      

    mysql的loop循还

    [循环标签:] loop
      循环体;
      if 条件表达式 then  
          leave [循环标签]; 
      end if;
    end loop;
    

      例

    CREATE  PROCEDURE pLoop()
    BEGIN 
          DECLARE vNum INT;
          SET vNum = 0;
          addLoop:LOOP
    	IF vNum>20 THEN
    	   LEAVE addLoop;
    	END IF;
    	SET vNum= vNum + 1;
          END LOOP addloop;
         SELECT vNum;
    END

    Leave 关键字:用户跳出当前的循还语句
    语法:leave 循还标签;
    Iterate 关键字:用于跳出本次循还,进行下次循还
    语法:iterate 循还标签;

    mysql的控制流函数

    1、IF(expr,v1,v2)函数
      如果表达式expr成立,返回结果v1;否则,返回结果v2。
    2、 IFNULL(v1,v2)函数
      如果v1的值不为NULL,则返回v1,否则返回v2。

    3、CASE

    CASE expr 
      WHEN e1   THEN  v1
      WHEN e2    THEN v2
      ...
      ELSE vn
    END
    

      例

    SQL> SELECT ename ,empno ,CASE job WHEN 'clerk' THEN sal+ 100  
       WHEN 'salesman' THEN sal + 1000  ELSE sal END FROM emp;

    4、其他函数

    floor(x) 返回小于等于x的最大整数
    ceiling(x) 返回大于等于x的最小整数
    mod(x) 返回余数
    pow(x,y) 返回x的y次方
    ABS(x) 返回x的绝对值

    python的运算符

    %  : 模 - 由右侧操作数和余返回除以左侧操作数

    **  : 指数- 执行对操作指数(幂)的计算

    //   : 地板除 - 操作数的除法,其中结果是将小数点后的位数被除去的商。

  • 相关阅读:
    js多个基本类型计算
    移动端弹窗滚动穿透问题
    length-of-longest-substring 无重复字符的最长子串 javascript解答
    addTwoNumbers两数之和 javascript解答
    two-sum两数之和 javascript解答
    js防抖和节流
    React / Vue 项目时为什么要在列表组件中写 Key,其作用是什么?
    二进制文件流处理笔记
    ES6 class 类的理解(一)
    django之js模板插件artTemplate的使用
  • 原文地址:https://www.cnblogs.com/steven223-z/p/11537727.html
Copyright © 2011-2022 走看看