格式为yyyymmddhh:mm:ss的时间格式转换
医务部要求统计住院时间48小时以内病人的手术情况,通过计算出区时间cqrq与入区时间rqrq的时间差,可以进行统计。
金仕达数据库中的时间格式为yyyymmddhh:mm:ss,非标准格式的字符串格式,需要转换成标准格式的时间格式datetime。
使用一下语句
datediff (hour,
convert (datetime,substring (rqrq,1,4)+'-'+substring (rqrq,5,2)+'-'+substring (rqrq,7,2)+' '+substring (rqrq,9,8),120),
convert (datetime,substring (cqrq,1,4)+'-'+substring (cqrq,5,2)+'-'+substring (cqrq,7,2)+' '+substring (cqrq,9,8),120))
其中substring 函数是截取字符串,第一个变量是被截取的字符串,可以使用如'****'的格式;第二个变量是字符串开始的位数;第三个变量是截取的字符数量。本例中,substring (rqrq,1,4) 是指 讲字符串rqrq的从第一位开始截取四位,即年份yyyy。
convert函数进行格式转换,有三个变量,第一个是目标格式;第二个是被转换的字段;第三个变量是可选变量,转换时间格式时,表示时间格式类型。全部的时间类型附后。
datediff函数进行时间差计算,也是三个变量,第一个是计算时间的单位,可以计算年year,月month,日day,时hour,分minute,秒second,毫秒ms,纳秒ns;第二个变量是减数,也就是前一个时间;第三个变量是被减数,是较后的时间。
------------------------------------------------
附全部的时间格式:
Style ID | Style 格式 |
---|---|
100 或者 0 | mon dd yyyy hh:miAM (或者 PM) |
101 | mm/dd/yy |
102 | yy.mm.dd |
103 | dd/mm/yy |
104 | dd.mm.yy |
105 | dd-mm-yy |
106 | dd mon yy |
107 | Mon dd, yy |
108 | hh:mm:ss |
109 或者 9 | mon dd yyyy hh:mi:ss:mmmAM(或者 PM) |
110 | mm-dd-yy |
111 | yy/mm/dd |
112 | yymmdd |
113 或者 13 | dd mon yyyy hh:mm:ss:mmm(24h) |
114 | hh:mi:ss:mmm(24h) |
120 或者 20 | yyyy-mm-dd hh:mi:ss(24h) |
121 或者 21 | yyyy-mm-dd hh:mi:ss.mmm(24h) |
126 | yyyy-mm-ddThh:mm:ss.mmm(没有空格) |
130 | dd mon yyyy hh:mi:ss:mmmAM |
131 | dd/mm/yy hh:mi:ss:mmmAM |