82.Oracle数据库SQL开发之 修改表内存——RETURNING子句
欢迎转载,转载请标明出处:blog.csdn.net/notbaron/ar…\
在10g及更高版本中,可以使用RETURNING子句返回使用聚合函数计算的结果。
例如:
store@PDB1> variable average_product_price number
store@PDB1> update products
2 setprice=price*0.75
3 returning avg(price) into:average_product_price;
product_id = 1
Old price = 19.95
New price = 14.96
The price reduction is more than 25%
product_id = 3
Old price = 25.99
New price = 19.49
The price reduction is more than 25%
product_id = 4
Old price = 13.95
New price = 10.46
The price reduction is more than 25%
product_id = 5
Old price = 49.99
New price = 37.49
The price reduction is more than 25%
product_id = 6
Old price = 14.95
New price = 11.21
The price reduction is more than 25%
product_id = 8
Old price = 12.99
New price = 9.74
The price reduction is more than 25%
product_id = 9
Old price = 10.99
New price = 8.24
The price reduction is more than 25%
product_id = 10
Old price = 15.99
New price = 11.99
The price reduction is more than 25%
product_id = 11
Old price = 14.99
New price = 11.24
The price reduction is more than 25%
12 rows updated.
store@PDB1> print average_product_price;
AVERAGE_PRODUCT_PRICE
---------------------
14.7966667
主要进行了如下操作:
l 声明一个变量average_product_price
l 减少products表中各行的price列,并使用RETURNING子句将平均价格保存在average_product_price变量中
l 输出average_product_price变量的值