V
Size: a a a
V
SB
ГР
V
ГР
SB
SB
YS
ГР
INSERT INTO statuses (card_number, old_status, blocking_date)
VALUES SELECT a1.card_number, a1.status,
CASE WHEN a1.status = 'Blocked' THEN a1.status_change_date_time_utc
ELSE NULL
END as blocking_date
FROM clients AS a1
LEFT JOIN statuses AS a2
ON a1.card_number = a2.card_number
WHERE a2.card_number IS NULL
OR a1.status <> a2.old_status
ON CONFLICT (card_number) DO UPDATE
SET old_status = EXCLUDED.status,
blocking_date = EXCLUDED.blocking_date;V
YS
ERROR: syntax error at or near "SELECT"
LINE 2: VALUES SELECT a1.card_number, a1.status,
^
V
SB
ГР
YS
Command: INSERTТ.е. либо
Description: create new rows in a table
Syntax:
[ WITH [ RECURSIVE ] with_query [, ...] ]
INSERT INTO table_name [ AS alias ] [ ( column_name [, ...] ) ]
[ OVERRIDING { SYSTEM | USER } VALUE ]
{ DEFAULT VALUES | VALUES ( { expression | DEFAULT } [, ...] ) [, ...] | query }
INSERT INTO statuses (card_number, old_status, blocking_date)
VALUES ('a', 'b', 'c'), ...
INSERT INTO statuses (card_number, old_status, blocking_date)
SELECT a1.card_number, a1.status, ...
ГР
V
SB
ГР
V