USE [Nursing] GO

/****** Object:  StoredProcedure [dbo].[P_GetICUVitualSign]    Script Date: 05/21/2015 21:47:21 ******/ SET ANSI_NULLS ON GO

SET QUOTED_IDENTIFIER ON GO

CREATE PROCEDURE [dbo].[P_GetICUVitualSign]   @VisitNumberParam varchar (30),   @RecordTypeParam datetime AS BEGIN

 SELECT *  into #temp   FROM [Nursing].[dbo].[V_ICUVitualSign]   where VisitNumber=@VisitNumberParam   order by RecordTime   -----------------------2----------------- create table #tempdata (   visitnumber varchar(30),   recordtime datetime,   code varchar(100),   value varchar(100) )

create table #tempdata2 (   rowindex int,   visitnumber varchar(30),   recordtime datetime,   code varchar(100),   value varchar(100) ) -----------------------3----------------- declare mycursor cursor for select VisitNumber,ItemNo,Value,RecordTime from #temp

declare @VisitNumber varchar(100) declare @ItemNo varchar(100) declare @Value varchar(100) declare @RecordTime datetime

open mycursor

FETCH next from mycursor into @VisitNumber,@ItemNo,@Value,@RecordTime

if @ItemNo=0 begin  insert into #tempdata2(rowindex,visitnumber,code,value)  select pos as rowindex, @VisitNumber as visitnumber,    nvalue as code ,'' as value   from Nursing.dbo.SplitToTable(@Value) where LEN(nvalue)>0 end

while @@FETCH_STATUS=0 begin

FETCH next from mycursor  into  @VisitNumber,@ItemNo,@Value,@RecordTime

declare @count int select @count=COUNT(1) from #tempdata2

if(@ItemNo=0)   begin   delete from #tempdata2   insert into #tempdata2(rowindex,visitnumber,code,value)   select  pos as rowindex,  @VisitNumber as visitnumber,     nvalue as code ,'' as value   from Nursing.dbo.SplitToTable(@Value) where LEN(nvalue)>0   end else begin  if(@count>0)   begin     delete from #tempdata where recordtime=@RecordTime     insert into #tempdata(   visitnumber,   recordtime ,   code ,   value )  select       a.visitnumber as visitnumber,    b.recordtime as recordtime ,    a.code as code ,    b.value  as value    from #tempdata2  as a left join       (select   pos as rowindex,    @RecordTime as recordtime,   nvalue as value   from Nursing.dbo.SplitToTable(@Value) where LEN(nvalue)>0) as b    on a.rowindex=b.rowindex   end end end

close mycursor DEALLOCATE mycursor -----------------------return data-----------------

  select    ltrim(rtrim(visitnumber)) as visitnumber,      recordtime as recordtime,      ltrim(rtrim(code )) as code,      ltrim( rtrim( value )) as value    from #tempdata  where recordtime=@RecordTypeParam   ------------------------------over-----------------   drop table #temp   drop table #tempdata   drop table #tempdata2  END

GO

ICU 是一种说不出的痛啊的更多相关文章

  1. 【转】javascript入门系列演示·三种弹出对话框的用法实例

    对话框有三种 1:只是提醒,不能对脚本产生任何改变: 2:一般用于确认,返回 true 或者 false ,所以可以轻松用于 if...else...判断 3: 一个带输入的对话框,可以返回用户填入的 ...

  2. 【JSP】三种弹出对话框的用法实例

    对话框有三种 1:只是提醒,不能对脚本产生任何改变: 2:一般用于确认,返回 true 或者 false ,所以可以轻松用于 if...else...判断 3: 一个带输入的对话框,可以返回用户填入的 ...

  3. JavaScript中的三种弹出对话框

    学习过js的小伙伴会发现,我们在一些实例中用到了alert()方法.prompt()方法.prompt()方法,他们都是在屏幕上弹出一个对话框,并且在上面显示括号内的内容,使用这种方法使得页面的交互性 ...

  4. js值类型转换(boolean/String/number),js运算符,if条件,循环结构,函数,三种弹出框

    js值类型转换 number | string | boolean boolean类型转换 num = 0; var b1 = Boolean(num); console.log(b1) 转化为数字类 ...

  5. js中三种弹出框

    javascript的三种对话框是通过调用window对象的三个方法alert(),confirm()和prompt()来获得,可以利用这些对话框来完成js的输入和输出,实现与用户能进行交互的js代码 ...

  6. JavaScript中的三种弹出框的区别与使用

    JavaScript中有三种原生的弹出框,分别是alert.confirm.prompt.分别表示弹出框.确认框.信息框. 以下是示例代码: <!DOCTYPE html> <htm ...

  7. js基础 三种弹出框 数据类型

    总结:js三个组成部分ES:语法DOM:对象模型 => 通过js代码与页面文档(出现在body中的所有可视化标签)进行交互BOM:对象模型 => 通过js代码与浏览器自带功能进行交互 引入 ...

  8. javascript入门系列演示·三种弹出对话框的用法实例

    对话框有三种 1:只是提醒,不能对脚本产生任何改变: 2:一般用于确认,返回 true 或者 false ,所以可以轻松用于 if...else...判断 3: 一个带输入的对话框,可以返回用户填入的 ...

  9. 关于jsp和html页面中的三种弹出框

    代码: <!-- 引入jquery 由于在下面使用jquery选择器,与弹出框无关 --> <script type="text/javascript" src= ...

随机推荐

  1. 模式识别之基础---mqdf分类器==MQDF改进的二次分类器

    QDF假设样本符合高斯分布,通过估计均值与协方差矩阵,训练分类器.但是由于特征维数较高,时空复杂度较高.(协方差矩阵的维数为 特征维数*特征维数).而且协方差矩阵往往存在不满秩无法求逆的情况(样本数& ...

  2. php中的字符串和正則表達式

    一.字符串类型的特点 1.PHP是弱类型语言,其它数据类型一般都能够直接应用于字符串函数操作. 1: <? php 2: echo substr("123456",2,4); ...

  3. LeetCode -- Flatten 二叉树

    这个题目主要考察二叉树的先序遍历. 1. 先序遍历2. 节点用队列存储3. 遍历队列,建立链表 实现: public class Solution { public void Flatten(Tree ...

  4. php生成唯一的串

    1.方法一: <?php md5(uniqid('aa',true)); ?> 2.方法2: //生成16位的串$randLength=6; $chars='abcdefghijklmno ...

  5. c# 根据读取的配置信息删除某个目录及下所有文件

    #region 定时删除目录文件 /// <summary> /// 定时删除目录文件 /// northeasttycoon /// </summary> /// <p ...

  6. 14、AppWidget及Launcher RemoteViews

    一.Launcher的简单研究 1 什么是Launcher Android系统启动后加载的第一个程序 . 这个程序是其他应用程序的入口 . Launcher构成: HomeScreen : (Work ...

  7. python 基础 6.2 raise 关键字使用

    一. raise 关键字    raise 用来触发异常    语法如下:     raise[Exception [,args [,traceback]]]     语句中Exception 是异常 ...

  8. windowsphone8.1学习笔记之应用数据(二)

    上一篇说了应用数据的应用设置,这篇说说应用文件,应用文件主要分为三种:本地应用文件.漫游应用文件和临时应用文件. 获取根目录方法如下,都是返回一个StorageFolder对象(稍后介绍这个). // ...

  9. 九度OJ 1173:查找 (排序、查找)

    时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:5808 解决:3163 题目描述: 输入数组长度 n  输入数组      a[1...n]  输入查找个数m  输入查找数字b[1...m ...

  10. Delphi 完全时尚手册之 Visual Style 篇

    这里先说说两个概念:Theme(主题)和 Visual Style .Theme 最早出现在 Microsoft Plus! for Windows 95 中,是 Windows 中 Wallpape ...