Oracle 行列转换积累
行列转换包括以下六种情况:
*列转行
*行转列
*多列转换成字符串
*多行转换成字符串
*字符串转换成多列
*字符串转换成多行
下面分别进行举例介绍。
首先声明一点,有些例子需要如下10g及以后才有的知识:
a。掌握model子句,
b。正则表达式
c。加强的层次查询
讨论的适用范围只包括8i,9i,10g及以后版本。begin:
1、列转行
- CREATE?TABLE?t_col_row( ??
-
ID?INT, ??
- c1?VARCHAR2(10), ??
- c2?VARCHAR2(10), ??
- c3?VARCHAR2(10)); ??
- ??
-
INSERT?INTO?t_col_row?VALUES?(1,?'v11',?'v21',?'v31'); ??
-
INSERT?INTO?t_col_row?VALUES?(2,?'v12',?'v22',?NULL); ??
-
INSERT?INTO?t_col_row?VALUES?(3,?'v13',?NULL,?'v33'); ??
-
INSERT?INTO?t_col_row?VALUES?(4,?NULL,?'v24',?'v34'); ??
-
INSERT?INTO?t_col_row?VALUES?(5,?'v15',?NULL,?NULL
免责声明: 本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。