DELIMITER $$

-- USE `dev_seal_chip_sell_ms_v1`$$;

DROP FUNCTION IF EXISTS `GET_ORDER_STATUS`$$

CREATE FUNCTION `get_order_status`(orderId VARCHAR(32)) RETURNS CHAR(2) CHARSET utf8
BEGIN
DECLARE isCancle CHAR(2) DEFAULT '0';
DECLARE sendOutStatus CHAR(2) DEFAULT '0';
DECLARE deposiStatuts CHAR(2) DEFAULT '0';
DECLARE restStatus CHAR(2) DEFAULT '0';
DECLARE consignTime DATETIME;

SELECT oi.`is_cancel`,oi.`send_out_status`,oi.`deposit_status`,oi.`rest_status`,oi.`consign_time`
INTO isCancle,sendOutStatus,deposiStatuts,restStatus,consignTime
FROM order_info oi WHERE oi.`id`=orderId;

IF isCancle='1' THEN
RETURN '3';-- 撤销
END IF;
IF (sendOutStatus='0' OR sendOutStatus IS NULL OR sendOutStatus='') THEN
RETURN '0';
END IF;
IF (deposiStatuts IS NOT NULL AND deposiStatuts='1') THEN
IF (sendOutStatus='0' OR sendOutStatus IS NULL OR sendOutStatus='') THEN
RETURN '0';-- 待发货
END IF;

IF consignTime IS NOT NULL THEN
RETURN '2';-- 交易成功
ELSEIF sendOutStatus='1' THEN
RETURN '1';-- 已发货
END IF;
END IF;
RETURN '4';-- 未付款
-- return '';
END$$

DELIMITER ;

mysql脚本文件的更多相关文章

  1. Windows下批处理执行MySQL脚本文件

    转载至http://my.oschina.net/u/660932/blog/117929 一. @echo offSetlocal enabledelayedexpansion::CODER BY ...

  2. 执行mysql脚本文件

    一般都是连接mysql执行sql语句: 在命令行下输入 mysql -h localhost -u root -p回车,然后输入密码即可; 或直接运行mysql自带的连接工具,然后输入密码即可. 执行 ...

  3. mysql脚本mysql_safe解释、mysql.sock文件、mysql_install_db

    1.首先解释下,启动mysql时为何会调用mysql_safe脚本来启动mysql [root@localhost ~]# /etc/init.d/mysqld start 正在启动 mysqld: ...

  4. 如何执行一个mysql的sql脚本文件

    sql脚本是包含一到多个sql命令的sql语句,我们可以将这些sql脚本放在一个文本文件中(我们称之为“sql脚本文件”),然后通过相关的命令执行这个sql脚本文件.基本步骤如下:一.创建包含sql命 ...

  5. mysql执行sql脚本文件

    mysql执行sql脚本文件 方法一:使用cmd命令执行(windows下,unix或Linux在的其控制台下) [MySQL的bin目录]\mysql –u用户名 –p密码 –D数据库<[sq ...

  6. MySQL控制台执行.sql脚本文件

    用notepad++编写好一个.sql脚本文件: drop database if exists library; create database library default character ...

  7. mysql中如何在命令行中,执行一个SQL脚本文件?

    需求描述: 在mysql数据库的使用中,有的时候,需要直接在shell的命令行中,执行某个SQL脚本文件, 比如,要初始化数据库,创建特定的存储过程,创建表等操作,这里进行一个基本的测试. 一般情况, ...

  8. MySQL命令行导入脚本文件

    通过命令行执行sql脚本文件的方法: cmd命令行下: C:\users\test_dir>"C:\Program Files\MySQL\MySQL Server 5.7\bin\m ...

  9. shell脚本中执行mysql sql脚本文件并传递参数

    1 shell 文件内容替换 sed是一个很好的文件处理工具,本身是一个管道命令,主要是以行为单位进行处理,可以将数据行进行替换.删除.新增.选取等特定工作,下面先了解一下sed的用法. 调用sed命 ...

随机推荐

  1. Go——标准库使用代理

    本文知识点 Go的安装 Go使用代理 Go进阶学习 环境配置 Go的安装 确认环境都安装好了,看看go的版本. go version 代码样例 使用代理,发送GET请求 package main im ...

  2. gem5-gpu全系统模式

    # 注意:安装好gem5-gpu后再配置全系统环境 # 下载全系统模拟需要的工具,详见http://gem5.org/Running_gem5#Full_System_.28FS.29_Mode,将L ...

  3. bash 内嵌命令 printf 用于进制转换

    printf - 格式化并显示数据 printf "%d" 0x10 printf "%x" 16

  4. Vim中的基本操作

    Vim中的基本操作 vim介绍.实验知识点.Vim中的六种基本模式 2.1 vim 6种模式介绍 从vi衍生出来的Vim具有多种模式,这种独特的设计容易使初学者产生混淆.几乎所有的编辑器都会有插入和执 ...

  5. bzoj 4318OSU!

    和tyvj的Easy一样吧(然而还是不会2333) 期望是不能直接平方的(涨姿势),所以,,呵呵 #include<bits/stdc++.h> #define inf 0x7ffffff ...

  6. 【STM32H7教程】第48章 STM32H7的FMC总线应用之是32路高速IO扩展

    完整教程下载地址:http://www.armbbs.cn/forum.php?mod=viewthread&tid=86980 第48章       STM32H7的FMC总线应用之是32路 ...

  7. CNN核心概念理解

    卷积神经网络 (Convolutional Neural Networks,简称CNN),是一种经典的神经网络算法.由于在图像识别领域取得的良好效果,随着人工智能的火热,它也受到越来越多的关注.CNN ...

  8. SpringMVC使用可以访问静态资源,但是导致Controller访问失败

    如果在web.xml 拦截配置如下: <!-- Spring MVC servlet --> <servlet> <servlet-name>SpringMVC&l ...

  9. expresscache和primocache加速资料整理-centos7缓存加速

    expresscache和primocachehttp://www.360doc.com/content/16/0111/17/256680_527142090.shtml 安装expresscach ...

  10. 吴裕雄--天生自然 JAVASCRIPT开发学习:比较 和 逻辑运算符

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...