重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
可以把表2删了,然后用create table 2 as select * from table 1 where 1=1;这样字段和数据就全部copy过来了,不知道是不是你想要的
创新互联主要从事网站设计制作、成都网站制作、网页设计、企业做网站、公司建网站等业务。立足成都服务滦南,10年网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792
create or replace procedure pr_uodate is
begin
Update X set col=(Select c from Y where b=a);
commit;
end pr_update;
你没说表有哪些字段,也没说两表用什么来关联,那我只能假设来回答。
假设表t1和表t2都有两个字段,ID和name,并且两表用ID关联
按你的描述,就是将ID相同的用表2替换,那么代码就是
select a.id,nvl(b.name,a.name) --nvl(x,y)语法意思是当x不为空时返回x,x为空时返回y
from table1 a
left join table2 b
on a.id=b.id
inert into another_table
as
select replace(fun(A),'要替换XX','替换成XX') new_A
from mytable;
commit;
oracle 支持函数嵌套使用。
动态SQL 实质就是执行的SQL字符串,所以你完全可以用拼接的方式,先把 字符串 拼接出来,然后用execute immediate 'sql' 来执行;
至于如果拼接出来 SQL,那就需要你去找规律,其实你可以对字符串做对此拼接,例如一下:str1 :='SELECT QW,QE,QR FROM Q WHERE Q=1';
str2 :='SELECT QW,COUNT(1) FROM EW,' || str1 || 'WHERE EW=QW GROUP BY QW;'
这类问题 完全属于个别案例,因为SQL的规律只有你自己最清楚,谁都无法提供一个完整的解决方案!
1、如果是多用户的情况下,反正没有数据,你不如把此用户删除,再重新建立,建立的时候,将此用户的临时表空间设置成新建的临时表空间。
2、若是只有一个用户,那么使用以下命令,修改临时表空间即可
Alter database default temporary tablespace temp;