例如有一个人员统计表PRESON 字段有A,B,C(字段A表示地区名,B表示10岁到20岁的年龄,C表示20到40的年龄,)
select * from PRESON显示为
A B C
地区1 3 6
地区2 4 5
地区3 6 8
现在我要显示效果为
A 地区1 地区2 地区3B 3 4 6C 6 5 8
如何实现?谢谢了
select * from PRESON显示为
A B C
地区1 3 6
地区2 4 5
地区3 6 8
现在我要显示效果为
A 地区1 地区2 地区3B 3 4 6C 6 5 8
如何实现?谢谢了
解决方案 »
- 求教各位前辈,两种大型数据库记录的ID设计优劣问题
- 请问SQL语句有强制字符串转数字的函数吗?
- 数据合并
- 能不能建立动态更新的表格
- ▲▲▲如何在存储过程中用变量表示表名▲▲▲
- 2个sql的性能对比
- 请问使用jsp + oracle 的大侠:4000字符以上的字段用什么类型?如何处理添加、修改?
- 在线等待,解决就地加分:关于Oracle中的游标!!!为什么最后一条记录会出现两次,如何解决
- 如何修改ORACLE的系统时间?
- 怎样向oracle中大批量加入数据(100M),,以便进行测试???
- imp时报错,此对象由sa导出,而不是当前用户
- ubuntu 12.04 已经安装好了oracle 10G xe版,启动sqlplus遇到一下问题
A VARCHAR2(20),
B VARCHAR2(20),
C VARCHAR2(20)
);
INSERT INTO PERSON VALUES('地区1','3','6');
INSERT INTO PERSON VALUES('地区2','4','5');
INSERT INTO PERSON VALUES('地区3','6','8');
INSERT INTO PERSON VALUES('地区4','7','10');
INSERT INTO PERSON VALUES('地区5','3','6');
INSERT INTO PERSON VALUES('地区6','4','5');
INSERT INTO PERSON VALUES('地区7','6','8');
INSERT INTO PERSON VALUES('地区8','7','10');
SELECT * FROM person;通过PLSQL解决,思路在,参考一下DECLARE
TYPE T_PERSON IS TABLE OF PERSON%ROWTYPE INDEX BY BINARY_INTEGER;
TYPE T_REC IS TABLE OF VARCHAR2(100) INDEX BY BINARY_INTEGER;
C_PERSION T_PERSON;
C_REC T_REC;
BEGIN
C_REC(1):=''; C_REC(2):=''; C_REC(3):='';
SELECT * BULK COLLECT INTO C_PERSION FROM PERSON;
FOR I IN C_PERSION.FIRST .. C_PERSION.LAST LOOP
C_REC(1):=C_REC(1)||' '||C_PERSION(i).A;
C_REC(2):=C_REC(2)||' '||C_PERSION(i).B;
C_REC(3):=C_REC(3)||' '||C_PERSION(i).C;
END LOOP;
FOR I IN 1 .. C_REC.COUNT LOOP
DBMS_OUTPUT.PUT_LINE(C_REC(I));
END LOOP;
END;
地区1 地区2 地区3 地区4 地区5 地区6 地区7 地区8
3 4 6 7 3 4 6 7
6 5 8 10 6 5 8 10
http://zjy126.iteye.com/blog/1188848