Oracle下需要建动态的临时表B,列数是根据表A中某列不重复的值的个数决定。。。。。。
发布网友
发布时间:2022-05-19 13:00
我来回答
共3个回答
热心网友
时间:2023-10-12 07:30
DECLARE
CURSOR cux IS
SELECT DISTINCT code
FROM a;
l_vString VARCHAR2(4000);
BEGIN
FOR r IN cux LOOP
l_vString := l_vString||r.code||' varchar2(2000) , '; --字段长度自己定
EXEC IMMEDIATE 'CREATE TABLE '||r.code||' AS SELECT * FROM al'; --表结构自己定
END LOOP;
EXEC IMMEDIATE 'CREATE TABLE b ('||substr(l_vString,1,length(l_vString) - 1)||')';
END;
/
热心网友
时间:2023-10-12 07:30
利用存储过程和游标实现,遍历利用distinct关键字过滤之后的表A记录,把记录插入到表B中,和新建20相应的表。
热心网友
时间:2023-10-12 07:30
还应该有列属性呀,这个不全呀。。。