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. HTTP状态码介绍详细

    HTTP协议中几个状态码的含义:1xx(临时响应) 表示临时响应并需要请求者继续执行操作的状态代码. 代码 说明 100 (继续) 请求者应当继续提出请求. 服务器返回此代码表示已收到请求的第一部分, ...

  2. WPF DataGrid 获取当前行某列值

    [0]是指当前行第1列的单元格位置 注意:DataRowView要求必须引用System.Data命名空间 方法一: DataRowView mySelectedElement = (DataRowV ...

  3. antd引入普通html使用,将ant Design本地化

    一直想着能本地化antd的,不用npm以及dva那么复杂的配置环境来开发,并且本地化以后对以后链接flask的模板渲染机制也能很好的结合.下面是具体的实现方法: 1.将react的相关链接引入: &l ...

  4. [原]js获取dom元素的实际位置及相对坐标

    关键API: Element.getBoundingClientRect() mdn:https://developer.mozilla.org/en-US/docs/Web/API/Element/ ...

  5. 如果这种方式导致程序明显变慢或者引起其他问题,我们要重新思考来通过 goroutines 和 channels 来解决问题

    https://github.com/Unknwon/the-way-to-go_ZH_CN/blob/master/eBook/09.3.md 9.3 锁和 sync 包 在一些复杂的程序中,通常通 ...

  6. API的理解和使用——集合

    集合类型的命令及时间复杂度  区间 命令 功能 时间复杂度  集合内 sadd key element [element ... ]  添加元素 O(k),k是元素个数 srem key elemen ...

  7. ubuntu nohup命令用法

    让程序在后台运行 该命令的一般形式nohup command & 程序在后台运行并打印日志 nohup ./china_fund.py > china_fund.file 2>&a ...

  8. 部署asp.net网站的小问题

    C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG   web.config  修改 trust level="Full"

  9. JAVA- String类练习

    JAVA- String类练习 需求1:去除字符串两边空格的函数,写一个自己的trim(); public class TestTrim { public static void main(Strin ...

  10. python处理txt文件的一种情况

    在txt文本中,以换行符作为标记分段处理txt文件中的内容的方法: with open(path, 'r', encoding='utf-8') as f: for line in f: if lin ...