FKdelphi

Oracle-数据实现竖排打印

--存放重证评分的数据表
create table ZZPFapache2
(
  ZZ_datetime DATE,   --时间
  ZZ_zongfen INTEGER, --总分
  ZZ_shiwanglui INTEGER, --死亡率 
  ZZ_BINGRENID VARCHAR2(50), --病人ID
  ZZ_h1f1 INTEGER,  --第1行1个分
  ZZ_h1m1 VARCHAR2(40),
  ZZ_h1f2 INTEGER,  --第1行2个分
  ZZ_h1m2 VARCHAR2(40),
  ZZ_h2f1 INTEGER,  --第2行1个分
  ZZ_h2m1 VARCHAR2(40),
  ZZ_h2f2 INTEGER,  --第2行2个分
  ZZ_h2m2 VARCHAR2(40),
  ZZ_h2f3 INTEGER,  --第2行3个分
  ZZ_h2m3 VARCHAR2(40),
  ZZ_h3f1 INTEGER,  --第3行1个分
  ZZ_h3m1 VARCHAR2(40),
  ZZ_h3f2 INTEGER,  --第3行2个分
  ZZ_h3m2 VARCHAR2(40),
  ZZ_h3f3 INTEGER,  --第3行3个分
  ZZ_h3m3 VARCHAR2(40),
  ZZ_h4f1 INTEGER,  --第4行1个分
  ZZ_h4m1 VARCHAR2(40),
  ZZ_h4f2 INTEGER,  --第4行2个分
  ZZ_h4m2 VARCHAR2(40),
  ZZ_h4f3 INTEGER,  --第4行3个分
  ZZ_h4m3 VARCHAR2(40),
  ZZ_h5f1 INTEGER,  --第5行1个分
  ZZ_h5m1 VARCHAR2(40),
  ZZ_h5f2 INTEGER,  --第5行2个分
  ZZ_h5m2 VARCHAR2(40),
  ZZ_h5f3 INTEGER,  --第5行3个分
  ZZ_h5m3 VARCHAR2(40),
  ZZ_h6f1 INTEGER,  --第6行1个分
  ZZ_h6m1 VARCHAR2(40),
  ZZ_h6f2 INTEGER,  --第6行2个分
  ZZ_h6m2 VARCHAR2(40),
  ZZ_h7f1 INTEGER,  --第7行1个分
  ZZ_h7m1 VARCHAR2(40),
  ZZ_h7f2 INTEGER,  --第6行2个分
  ZZ_h7m2 VARCHAR2(40),
  ZZ_h8f1 INTEGER,  --第8行1个分
  ZZ_h8m1 VARCHAR2(40),
  ZZ_h8f2 INTEGER,  --第8行2个分
  ZZ_h8m2 VARCHAR2(40),
  ZZ_f1 INTEGER,  --复选第1个分
  ZZ_f2 INTEGER,  --复选第2个分
  ZZ_f3 INTEGER,  --复选第3个分
  ZZ_f4 INTEGER,  --复选第4个分
  ZZ_f5 INTEGER,  --复选第5个分
  ZZ_GUserID VARCHAR2(40),
  ZZ_GUserName VARCHAR2(40)
)
tablespace TS_IMIS
  pctfree 10
  initrans 1
  maxtrans 255
  storage
  (
    initial 64K
    minextents 1
    maxextents unlimited
  );

--存放重症评分竖排数据视图
create or replace view zzpfdy as
select "ZZ_BINGRENID","ZZ_DATETIME","SUBJECT1","RESULT" from
(
  select 1 line,ZZ_BINGRENID,ZZ_DATETIME ,  \'得分\' SUBJECT1, ZZ_ZONGFEN result from zzpfapache2
  union all
  select 2 line,ZZ_BINGRENID,ZZ_DATETIME ,  \'死亡率\'SUBJECT1, ZZ_SHIWANGLUI result from zzpfapache2
  union all
  select 3 line,ZZ_BINGRENID,ZZ_DATETIME ,  \'年龄\'SUBJECT1, ZZ_H1F1 result from zzpfapache2
    union all
  select 4 line,ZZ_BINGRENID,ZZ_DATETIME ,  \'有严重慢性器官系统功能不全\'SUBJECT1,ZZ_H1F2 result from zzpfapache2
    union all
  select 5 line,ZZ_BINGRENID,ZZ_DATETIME ,  \'睁眼反应\' SUBJECT1 ,ZZ_H2F1 result from zzpfapache2
    union all
  select 6 line,ZZ_BINGRENID,ZZ_DATETIME ,  \'言语反应\' SUBJECT1,ZZ_H2F2 result from zzpfapache2
    union all
  select 7 line,ZZ_BINGRENID,ZZ_DATETIME ,  \'运动反应\' SUBJECT1,ZZ_H2F3 result from zzpfapache2
    union all
  select 8 line,ZZ_BINGRENID,ZZ_DATETIME ,  \'体温\'SUBJECT1,ZZ_H3F1 result from zzpfapache2
    union all
  select 9 line,ZZ_BINGRENID,ZZ_DATETIME ,  \'平均血压(mmHg)\'SUBJECT1, ZZ_H3F2 result from zzpfapache2
    union all
  select 10 line,ZZ_BINGRENID,ZZ_DATETIME , \'心率(次/分)\'SUBJECT1 , ZZ_H3F3 result from zzpfapache2
    union all
  select 11 line,ZZ_BINGRENID,ZZ_DATETIME , \'呼吸(次/分)\'SUBJECT1 ,ZZ_H4F1 result from zzpfapache2
      union all
  select 12 line,ZZ_BINGRENID,ZZ_DATETIME , \'FIO2\' SUBJECT1,ZZ_H4F2 result from zzpfapache2
    union all
 select 13 line,ZZ_BINGRENID,ZZ_DATETIME ,  \'血清HCO3(无ABGs)(mmol/L)\' SUBJECT1,ZZ_H4F3 result from zzpfapache2
   union all
  select 14 line,ZZ_BINGRENID,ZZ_DATETIME , \'血清Na(mmol/L)\' SUBJECT1,ZZ_H5F1 result from zzpfapache2
    union all
  select 15 line,ZZ_BINGRENID,ZZ_DATETIME , \'血清K(mmol/L)\' SUBJECT1,ZZ_H5F2 result from zzpfapache2
    union all
  select 16 line,ZZ_BINGRENID,ZZ_DATETIME , \'动脉血PH\' SUBJECT1 ,ZZ_H5F3 result from zzpfapache2
    union all
  select 17 line,ZZ_BINGRENID,ZZ_DATETIME , \'血细胞比容(%)\' SUBJECT1,ZZ_H6F1 result from zzpfapache2
     union all
  select 18 line,ZZ_BINGRENID,ZZ_DATETIME , \'WBC(*1000/mm3)\' SUBJECT1,ZZ_H6F2 result from zzpfapache2
     union all
  select 19 line,ZZ_BINGRENID,ZZ_DATETIME , \'Pa02(mmHg...KPa)\' SUBJECT1,ZZ_H7F1 result from zzpfapache2
     union all
  select 20 line,ZZ_BINGRENID,ZZ_DATETIME , \'A-aD02(mmHg...KPa)\' SUBJECT1,ZZ_H7F2 result from zzpfapache2
    union all
  select 21 line,ZZ_BINGRENID,ZZ_DATETIME , \'血清肌酐(mg/dl..micromol/l)\' SUBJECT1,ZZ_H8F1 result from zzpfapache2
    union all
  select 22 line,ZZ_BINGRENID,ZZ_DATETIME , \'急性肾功能衰竭\' SUBJECT1,ZZ_H8F2 result from zzpfapache2
    union all
  select 23 line,ZZ_BINGRENID,ZZ_DATETIME , \'有无功能不全免疫损害:肝\' SUBJECT1,ZZ_F1 result from zzpfapache2
    union all
  select 24 line,ZZ_BINGRENID,ZZ_DATETIME , \'有无功能不全免疫损害:心血管\' SUBJECT1,ZZ_F2 result from zzpfapache2
    union all
  select 25 line,ZZ_BINGRENID,ZZ_DATETIME , \'有无功能不全免疫损害:呼吸系统\' SUBJECT1,ZZ_F3 result from zzpfapache2
    union all
  select 26 line,ZZ_BINGRENID,ZZ_DATETIME , \'有无功能不全免疫损害:肾\' SUBJECT1,ZZ_F4 result from zzpfapache2
    union all
  select 27 line,ZZ_BINGRENID,ZZ_DATETIME , \'有无功能不全免疫损害:免疫抑制状态\' SUBJECT1,ZZ_F5 result from zzpfapache2
 ) t
order by ZZ_DATETIME ,line;


--打印时为多列,所以又加入一个多列视图
CREATE OR REPLACE VIEW ZZPFDY2 AS
SELECT
a.subject1,
a.ZZ_DATETIME,a.n, A.ZZ_BINGRENID, A.result,
b.n bn, b.ZZ_BINGRENID bp,b.ZZ_DATETIME bt, B.result as result1,
c.n cn, c.ZZ_BINGRENID cp,c.ZZ_DATETIME ct, c.result as result2,
d.n dn, d.ZZ_BINGRENID dp,d.ZZ_DATETIME dt, d.result as result3,
e.n en, e.ZZ_BINGRENID ep,e.ZZ_DATETIME et, e.result as result4,
f.n fn, f.ZZ_BINGRENID fp,f.ZZ_DATETIME ft, f.result as result5
FROM

(SELECT N, result, ZZ_BINGRENID,ZZ_DATETIME,subject1
FROM (SELECT ROWNUM N, result, ZZ_BINGRENID,ZZ_DATETIME,subject1 FROM zzpf
 )
WHERE MOD(FLOOR((N - 1) / 27), 6) = 0
) A,
(SELECT N, result, ZZ_BINGRENID,ZZ_DATETIME
FROM (SELECT ROWNUM N, result,ZZ_BINGRENID,ZZ_DATETIME FROM zzpf
 )
WHERE MOD(FLOOR((N - 1) / 27), 6) = 1
) B,
(SELECT N, result, ZZ_BINGRENID,ZZ_DATETIME
FROM (SELECT ROWNUM N, result, ZZ_BINGRENID,ZZ_DATETIME FROM zzpf
)
WHERE MOD(FLOOR((N - 1) / 27), 6) = 2
) C,
(SELECT N, result, ZZ_BINGRENID,ZZ_DATETIME
FROM (SELECT ROWNUM N, result, ZZ_BINGRENID,ZZ_DATETIME FROM zzpf
)
WHERE MOD(FLOOR((N - 1) / 27), 6) = 3
) D,
(SELECT N, result, ZZ_BINGRENID,ZZ_DATETIME
FROM (SELECT ROWNUM N, result, ZZ_BINGRENID,ZZ_DATETIME FROM zzpf
)
WHERE MOD(FLOOR((N - 1) / 27), 6) = 4
) E,
(SELECT N, result, ZZ_BINGRENID,ZZ_DATETIME
FROM (SELECT ROWNUM N, result, ZZ_BINGRENID,ZZ_DATETIME FROM zzpf
)
WHERE MOD(FLOOR((N - 1) / 27), 6) = 5
) F

WHERE A.N + 27  = B.N(+)  and b.N + 27  = c.N(+) and
      c.N + 27  = D.N(+)  and D.N + 27  = E.N(+) and
      e.n + 27  = f.N(+);

--竖排视图与打印视图的中间视图
create or replace view ZZPF as (select * from zzpfdy where ZZ_BINGRENID=\'1545187\')

分类:

技术点:

相关文章:

  • 2021-12-05
  • 2021-12-02
  • 2021-11-18
  • 2021-05-10
  • 2021-11-23
  • 2021-10-25
  • 2021-06-15
  • 2021-08-31
猜你喜欢
  • 2022-12-23
  • 2022-01-16
  • 2021-12-09
  • 2022-03-03
  • 2022-12-23
  • 2021-12-31
  • 2021-12-24
相关资源
相似解决方案