Oracle动态生成查询交叉表 |
发布时间: 2012/8/16 16:53:42 |
表结构: 序号 2 RecordNo NUMBER 记录号 3 FieldNo NUMBER(2) 字段编号 4 Datum VarChar(200) 值
REPORTID RECORDNO FIELDNO DATUM Oracle动态生成查询交叉表 select max(a1) as 姓名, max(a2) as 地址, max(a3) as 出生, max(a4) as 电话, max(a5) as 婚否 from (select recordno, nvl(decode(fieldno, 1, Datum), '') a1, nvl(decode(fieldno, 2, Datum), '') a2, nvl(decode(fieldno, 3, Datum), '') a3, nvl(decode(fieldno, 4, Datum), '') a4, nvl(decode(fieldno, 5, Datum), '') a5 from Rep_Register where reportid = 1 and RecordNo = (select RecordNo from Rep_Register where FieldNo = 2 and Datum Like '武汉市%')) group by recordno reportid=1为需要查询的报告号 再下面为其它查询条件 本文出自:亿恩科技【www.enkj.com】 2 RecordNo NUMBER 记录号 3 FieldNo NUMBER(2) 字段编号 4 Datum VarChar(200) 值
REPORTID RECORDNO FIELDNO DATUM Oracle动态生成查询交叉表 select max(a1) as 姓名, max(a2) as 地址, max(a3) as 出生, max(a4) as 电话, max(a5) as 婚否 from (select recordno, nvl(decode(fieldno, 1, Datum), '') a1, nvl(decode(fieldno, 2, Datum), '') a2, nvl(decode(fieldno, 3, Datum), '') a3, nvl(decode(fieldno, 4, Datum), '') a4, nvl(decode(fieldno, 5, Datum), '') a5 from Rep_Register where reportid = 1 and RecordNo = (select RecordNo from Rep_Register where FieldNo = 2 and Datum Like '武汉市%')) group by recordno reportid=1为需要查询的报告号 再下面为其它查询条件 本文出自:亿恩科技【www.enidc.com】 --> |