mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-10-12 04:26:59 +02:00
1d763d9107
and DELETE. If specified, the alias must be used instead of the full table name. Also, the alias currently cannot be used in the SET clause of UPDATE. Patch from Atsushi Ogawa, various editorialization by Neil Conway. Along the way, make the rowtypes regression test pass if add_missing_from is enabled, and add a new (skeletal) regression test for DELETE.
22 lines
544 B
PL/PgSQL
22 lines
544 B
PL/PgSQL
CREATE TABLE delete_test (
|
|
id SERIAL PRIMARY KEY,
|
|
a INT
|
|
);
|
|
|
|
INSERT INTO delete_test (a) VALUES (10);
|
|
INSERT INTO delete_test (a) VALUES (50);
|
|
INSERT INTO delete_test (a) VALUES (100);
|
|
|
|
-- allow an alias to be specified for DELETE's target table
|
|
DELETE FROM delete_test AS dt WHERE dt.a > 75;
|
|
|
|
-- if an alias is specified, don't allow the original table name
|
|
-- to be referenced
|
|
BEGIN;
|
|
SET LOCAL add_missing_from = false;
|
|
DELETE FROM delete_test dt WHERE delete_test.a > 25;
|
|
ROLLBACK;
|
|
|
|
SELECT * FROM delete_test;
|
|
|
|
DROP TABLE delete_test; |