POSTGRESQL 存储过程 select into 和 insert into select 两种表复制语句之间的差别
来源:互联网 发布:电子设备审计软件功能 编辑:程序博客网 时间:2024/06/06 07:43
select into 和 insert into select 两种表复制语句之间的差别
select * into 表1 from 表2
insert into 表1(name, no) select name, 123 from 表2;
以上两句都是将 表2 的数据插入到表1,但两句又有区别的。
第一句(select into from)要求目标表(表1)不存在,因为在插入时会自动创建。
第二句(insert into select from)要求目标表(表1)存在,由于目标表已经存在,所以我们除了插入源表(表2)的字段外,还可以插入常量,如例中的:123。
存储过程:要求返回插入影响的行数,从表2查询出来数据插入到表1中,再把表2的那条数据删除,传入参数(参数1,参数2,参数3)参数1为id
CREATE OR REPLACE FUNCTION 存储过程名(
参数1 integer,
参数2 integer,
参数3 text)
RETURNS integer AS
$BODY$
DECLARE
v_count int; \\记录受影响的行数
BEGIN
INSERT INTO 表1(
字段1,
字段2,
字段3
)
SELECT 字段1,
字段2,
123 //插入常量123
FROM 表2
WHERE 字段= 参数1;
GET DIAGNOSTICS v_count = ROW_COUNT; //得到影响的行数
DELETE FROM 表2
WHERE 字段= 参数1;
RETURN v_count;
END
$BODY$
LANGUAGE plpgsql VOLATILE
- POSTGRESQL 存储过程 select into 和 insert into select 两种表复制语句之间的差别
- PostgreSQL SELECT INTO和INSERT INTO SELECT 两种表复制语句
- 表的复制语句: select into 和 insert into select
- select into 和 insert into select 两种表复制语句
- select into 和 insert into select 两种表复制语句
- select into 和 insert into select 两种表复制语句
- select into 和 insert into select 两种表复制语句
- select into 和 insert into select 两种表复制语句
- select into 和 insert into select 两种表复制语句
- [MSSQL]SELECT INTO 和 INSERT INTO SELECT 两种表复制语句
- SELECT INTO 和 INSERT INTO SELECT 两种表复制语句
- SELECT INTO 和 INSERT INTO SELECT 两种表复制语句
- select into 和 insert into select 两种表复制语句
- select into 和 insert into select 两种表复制语句
- select into 和 insert into select 两种表复制语句
- SELECT INTO 和 INSERT INTO SELECT 两种表复制语句
- SELECT INTO 和 INSERT INTO SELECT 两种表复制语句
- SELECT INTO 和 INSERT INTO SELECT 两种表复制语句
- scp命令
- 《学习日记》prototype,_proto_以及call\apply方法理解
- HDU 2577 How to Type(DP)
- LintCode-链表插入排序
- C++ Primer 学习笔记_19_语句 --if/switch/while/for语句
- POSTGRESQL 存储过程 select into 和 insert into select 两种表复制语句之间的差别
- mysql的查询、子查询及连接查询
- Openbr: nmake编译过程中出现 file DOWNLOAD HASH mismatch问题
- PBR:应用于虚幻引擎4贴图和材质创建的启示
- Web Service的三大技术
- android:layout_weight="1"
- 一个为OpenFlow规则分配与端点规则实施而设计的通用最优化框架(五)
- C++ Primer 学习笔记_20_语句(续) --break/continue/try,catch
- SpringMVC介绍之视图解析器ViewResolver