IF v_docType = 3 THEN
update T_PATIENT_INFO set USER_NAME =userName ,SEX = v_sex,BIRTHDAY = to_date(brithday,'YYYYMMDD'), ID_NUMBER = idNumber,PROVINCE_NO = provinceId,CITY_NO = cityId,COUNTRY_NO = countryId,
ADDRESS = address,CREATE_USER_ID = addUserId,DOCTOR_ID = addUserId
where MOBILE = phone;

ELSE if v_docType=2 then
update T_PATIENT_INFO set USER_NAME =userName ,SEX = v_sex,BIRTHDAY = to_date(brithday,'YYYYMMDD'), ID_NUMBER = idNumber,PROVINCE_NO = provinceId,CITY_NO = cityId,COUNTRY_NO = countryId,
ADDRESS = address,CREATE_USER_ID = addUserId,DOCTOR_ID = addUserId,COMMUNITY_ID = addUserId
where MOBILE = phone;

else
update T_PATIENT_INFO set USER_NAME =userName ,SEX = v_sex,BIRTHDAY = to_date(brithday,'YYYYMMDD'), ID_NUMBER = idNumber,PROVINCE_NO = provinceId,CITY_NO = cityId,COUNTRY_NO = countryId,
ADDRESS = address,CREATE_USER_ID = addUserId,COMMUNITY_ID = addUserId
where MOBILE = phone;
end if;
END IF;

这里BIRTHDAY 传过来的是'YYYYMMDD'类型的字符串,贰表里面该字段的存储类型是Date,就需要在sql里面进行类型转换,这就是一个转换的语句,可以供其他地方参考!

下面这种情况是取得时候直接在sql里面把date转为vcharge

SELECT A.RECORD_ID,A.PAPER_ID,TO_CHAR(A.CREATE_TIME,'yyyy-mm-dd hh24:mi') CREATE_TIME,B.PAPER_TITLE,v_advice_txt ADVICE_CONTENT,v_wj_score SCORE,v_score_desc SCOREDESC
FROM T_RECORD_PAPER A INNER JOIN T_PAPER B
ON A.PAPER_ID=B.PAPER_ID WHERE A.Record_Id=v_recordId;

这里的TO_CHAR  to_date 都是oracle的内置函数,没试过在mysql中能不能适用,应该是不区分大小写的

再来一点

v_start IN NUMERIC,
v_end IN NUMERIC,

and to_char(a.create_time, 'YYYYMMDD') >= v_start
and to_char(a.create_time, 'YYYYMMDD') <= v_end

这里也是可以的,字符与数值进行运算,v_start的格式是160809,oracle的强大灵活,服了吧!

再来一点

--插入医生用户信息表
insert into T_DOCTOR_INFO(DOCTOR_ID,USER_NAME,MOBILE,EMAIL,SEX,BIRTHDAY,HOSPITAL_ID,DEPT_ID,JOBTITLE_ID,INTRODUCE,SOURCE,DOCTOR_TYPE)
values(v_userId,USER_NAME,MOBILE,EMAIL,SEX,to_date(BIRTHDAY,'yyyy/mm/dd'),HOSPITAL_ID,DEPT_ID,JOBTITLE_ID,INTRODUCE,SOURCE,DOCTOR_TYPE);

这里表中的BIRTHDAY是 date ,贰传过来的参数是yyyy/mm/dd的字符串

还有这个:

INSERT INTO T_FRIEND_GROUP_INFO
(GROUP_ID,GROUP_NAME,GROUP_TYPE,USER_ID,CREATE_TIME)
VALUES
(1,'我的病人',1,v_userId,SYSDATE);

自动获取当前时间SYSDATE

又一个转换: vWTTime:=TO_DATE(v_Time,'yyyy-mm-dd,hh24:mi:ss');

sql对日期的处理,一个存储过程示例的更多相关文章

  1. SQL Server日期函数之获得一个月中的天数

    SQL Server日期函数之获得一个月中的天数在实际中的应用比例还是占为多数的,如果你对这一技术,心存好奇的话,以下的文章将会揭开它的神秘面纱,望会在以后的学习或是工作中带来很大的帮助. 获得一个月 ...

  2. SQL得到任意一个存储过程的参数列表sp_procedure_params_rowset

    SQL得到任意一个存储过程的参数列表sp_procedure_params_rowsetexec sp_procedure_params_rowset 'up_rpt营业收入汇总表' PROCEDUR ...

  3. 【存储过程】用SQL语句获得一个存储过程返回的表

    定义一个存储过程如下: create proc [dbo].[test1] @id int as select 1 as id,'abc' as name union all select @id a ...

  4. SQL 数据库 学习 007 通过一个示例简单介绍什么是字段、属性、列、元组、记录、表、主键、外键 (上)

    SQL 数据库 学习 007 通过一个示例简单介绍什么是字段.属性.列.元组.记录.表.主键.外键 (上) 我们来介绍一下:数据库是如何存储数据的. 数据库是如何存储数据的 来看一个小例子 scott ...

  5. 使用oracle 的 PL/Sql 定时执行一个存储过程

    CSDN日报20170322--<关于软件研发的一些体会总结> 同步博客至 CSDN ,让更多开发者看到你的文章 看微博技术大咖解析互联网应用架构实战 使用oracle 的 PL/Sql ...

  6. SQL SERVER 存储过程示例

    USE TEST_DEV; SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO -- ================================== ...

  7. SQL 存储过程里调用另一个存储过程

    由于创建了一个存储过程,并且要在另一个存储过程里调用这个存储过程所以在网上找了一下相关的代码,现在总结一下,防止以后还会用到 由于这次我写的存储过程只需要返回一个求和的结果,所以我使用了output ...

  8. SQL Server 的通用分页显示存储过程

    建立一个 Web 应用,分页浏览功能必不可少.这个问题是数据库处理中十分常见的问题.经典的数据分页方法是:ADO 纪录集分页法,也就是利用ADO自带的分页功能(利用游标)来实现分页.但这种分页方法仅适 ...

  9. SQL Server 日期相关

    原文:SQL Server 日期相关 原帖出处:http://blog.csdn.net/dba_huangzj/article/details/7657979 对于开发人员来说,日期处理或许简单,或 ...

随机推荐

  1. 错误 1 未能找到元数据文件“C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/Temporary ASP.NET Files/wwwroot/7cb4fcd

    错误 1 未能找到元数据文件“C:/WINDOWS/Microsoft.NET/Framework/v2.0.50727/Temporary ASP.NET Files/wwwroot/7cb4fcd ...

  2. Java学习日记-1 设置Java环境变量等

    一.环境变量的设置 安装完jdk以后,需要配置环境变量,找到[我的电脑]-[属性]-[高级]-[环境变量] 这里需要配置3个环境变量 1.新建系统变量JAVA_HOME,变量值为jdk的安装路径,比如 ...

  3. Java学习日记-6 继承

    继承1.基本介绍 面向对象程序设计三大原则之一.被继承的称为父类,继承类称为子类.关键字:extends例子: class TwoDshape{ double width; double height ...

  4. adb devices: no permissions

    现象: #sudo adb root Error:insufficient permissions for device #adb devices List of devices attached ? ...

  5. HTTP学习笔记2-请求结构

    8,HTTP请求 客户端通过发送HTTP请求向服务器请求对资源的访问. HTTP请求由三部分组成,分别是:请求行,消息报头,请求正文. 9,HTTP请求-请求行 请求行以一个方法符号开头,后面跟着请求 ...

  6. Android 关于获取摄像头帧数据解码

    由于Android下摄像头预览数据只能  ImageFormat.NV21 格式的,所以解码时要经过一翻周折. Camera mCamera = Camera.open(); Camera.Param ...

  7. java环境下的数据库读写分离

    方案很多:阿里的中间件cobar.aop注解方式.com.mysql.jdbc.ReplicationDriver读写分离驱动MySQL数据库的同步. MySQL是开源的关系型数据库系统.主从同步复制 ...

  8. ajax的来龙去脉

    这是我在博客园写的第一遍博客,之前都是只看不写,在园子里学到了不少的东西,现在也想着把自己的一些感悟写出来给大家分享一下. ajax技术可以说是Web2.0应用程序的技术基础,尽管软件经销商和开源社区 ...

  9. dl标签和table标签

    dl标签定义了一个定义列表 <html> <body> <h2>一个定义列表:</h2> <dl>   <dt>计算机</ ...

  10. php按址传递bug

    foreach ($product_info as $key=>&$value){            $value['bookCity'][]=array(              ...