0
我有一組3個表,每個表包含3列如下(user_id,user_name,user_lastname,user_code_type)。Postgresql函數返回所做更新
我使用以下函數來插入從表2的值到表1和3
CREATE OR REPLACE FUNCTION "TestDB"."TEST_UPDATE_1"()
RETURNS integer AS
$BODY$
DECLARE
update1 integer;
update2 integer;
BEGIN
INSERT INTO "TestDB"."TEST.TABLE.1" (user_id, user_name, user_lastname, user_code_type)
SELECT RT1.user_id, RT1.user_name, RT1.user_lastname, RT1.user_code_type FROM "TestDB"."TEST.TABLE.2" RT1
WHERE
NOT EXISTS (SELECT 1 FROM "TestDB"."TEST.TABLE.1" RT2 WHERE RT2.user_id = RT1.user_id);
GET DIAGNOSTICS update1 = ROW_COUNT;
INSERT INTO "TestDB"."TEST.TABLE.3" (user_id, user_name, user_lastname, user_code_type)
SELECT RT1.user_id, RT1.user_name, RT1.user_lastname, RT1.user_code_type FROM "TestDB"."TEST.TABLE.2" RT1
WHERE
NOT EXISTS (SELECT 1 FROM "TestDB"."TEST.TABLE.3" RT2 WHERE RT2.user_id = RT1.user_id);
GET DIAGNOSTICS update2 = ROW_COUNT;
RETURN update1+update2;
END;
$BODY$
LANGUAGE plpgsql VOLATILE
由於此刻我得到的行,將其插在兩者的總數以上的結果表1和3.
我感興趣的輸出是一個表,它將表示行數,成功插入到1和3(帶輸出結果的單行和2列表)中。
我已經通過了這裏的帖子數量,但找不到將解決此問題的解決方案。任何幫助將非常感激。
非常感謝您的及時回覆。我將實施更改併發布更新結果。 –