Plsql PL/SQL填充表
大家好,这是我第一次发帖,但我真的需要帮助 事实上,我是SQL编程新手,我现在面临着太多的问题,尤其是这个练习 我们有4张桌子 客户(numcli,名称、地址、Towncli) 账户(numacc,货币,#numcli,#numag) 代理(numag,nameag,townag) 客户(numcli,numag) 现在我们有一个空表“STATES”,我们需要用4个表中的信息填充它 州(numcli、countaccount、countag、Calleey、taux) taux必须初始化为0 强值表示主键 #中的值表示外键 所以我编写了这个pl/sql块,但它有一个问题Plsql PL/SQL填充表,plsql,Plsql,大家好,这是我第一次发帖,但我真的需要帮助 事实上,我是SQL编程新手,我现在面临着太多的问题,尤其是这个练习 我们有4张桌子 客户(numcli,名称、地址、Towncli) 账户(numacc,货币,#numcli,#numag) 代理(numag,nameag,townag) 客户(numcli,numag) 现在我们有一个空表“STATES”,我们需要用4个表中的信息填充它 州(numcli、countaccount、countag、Calleey、taux) taux必须初始化为0 强
DEclare
cursor c1 is select
client1.numcli,count(numacc),sum(money),count(numag),taux from account ,states group by (numcli) ;
begin
for c2 in c1
loop
c2.taux:='0' ;
insert into states (numcli,countaccount,countag,summoney,taux) values c2 ;
end loop ;
end ;
他说对我来说,甲骨文价值观还不够
有人能帮我吗
1) “client1.numclient1”代表什么?这是误导。这是表帐户中的numcli吗?
2) 游标“from”子句,表示两个表,但这里没有连接。打字错误?如果没有,加入他们;
3) 游标属性列为numcli、count(numac)、sum(money)、count(numag)和taux,但在insert语句中,属性的顺序不同:numcli、countaccount、countag、coursey、taux;
4) 在这种情况下,不能将“.values c2;”插入到这样的表中。你需要逐一申报
对于解决方案,如果您的目的只是填充表,则可以执行以下操作:
insert into states(numcli,countaccount,countag,summoney,taux)
select
acn.numcli,
count(acn.numacc) countaccount,
count(acn.numag) countag,
sum(acn.money) summoney,
0 taux
from
account acn
group by
acn.numcli;
这里不需要光标。
希望能有帮助。
祝您在探索PL/SQL世界时好运 洞察:
1) “client1.numclient1”代表什么?这是误导。这是表帐户中的numcli吗?
2) 游标“from”子句,表示两个表,但这里没有连接。打字错误?如果没有,加入他们;
3) 游标属性列为numcli、count(numac)、sum(money)、count(numag)和taux,但在insert语句中,属性的顺序不同:numcli、countaccount、countag、coursey、taux;
4) 在这种情况下,不能将“.values c2;”插入到这样的表中。你需要逐一申报
对于解决方案,如果您的目的只是填充表,则可以执行以下操作:
insert into states(numcli,countaccount,countag,summoney,taux)
select
acn.numcli,
count(acn.numacc) countaccount,
count(acn.numag) countag,
sum(acn.money) summoney,
0 taux
from
account acn
group by
acn.numcli;
这里不需要光标。
希望能有帮助。
祝您在探索PL/SQL世界时好运