下面是我的脚本,它适用于单个记录。
UPDATE SUPPORT
SET POSTALADDRESSLINE1 = (SELECT (POSTALDELIVERYNUMBERPREFIX ||' '|| POSTALDELIVERYNUMBERVALUE ||' '|| POSTALDELIVERYSTREETNAME ||' '|| POSTALDELIVERYSTREETTYPE)
FROM SUPPORT WHERE SUPPORTID ='2119022')
WHERE SUPPORTID ='2119022';
我现在需要为大约 3000 条记录执行此操作。有没有简单的方法可以做到这一点?
答案 0 :(得分:1)
这不是 PL/SQL,它只是 SQL。您不需要 SET 子句中的子查询。相反,您可以像这样重写它:
UPDATE SUPPORT
SET POSTALADDRESSLINE1 = POSTALDELIVERYNUMBERPREFIX ||' '||
POSTALDELIVERYNUMBERVALUE ||' '||
POSTALDELIVERYSTREETNAME ||' '||
POSTALDELIVERYSTREETTYPE
WHERE SUPPORTID ='2119022';
在您测试以确保其有效后,调整您的 WHERE 子句,使其选择您的 3000 条记录(如果您正在处理整个表格,则去掉 WHERE),您应该一切就绪。
>答案 1 :(得分:0)
UPDATE SUPPORT
SET POSTALADDRESSLINE1 = (POSTALDELIVERYNUMBERPREFIX ||' '|| POSTALDELIVERYNUMBERVALUE ||' '|| POSTALDELIVERYSTREETNAME ||' '|| POSTALDELIVERYSTREETTYPE)
WHERE ...;