)
UPDATE tickets_directions td
SET last_ticket_time = CURRENT_TIMESTAMP,
tickets_num = tickets_num + 1
FROM flights_v f
WHERE td.departure_city = f.departure_city
AND td.arrival_city
= f.arrival_city
AND f.flight_id = ( SELECT flight_id FROM sell_ticket );
UPDATE 1
Посмотрим, что получилось.
SELECT * FROM tickets_directions WHERE tickets_num > 0;
--[ RECORD 1 ]----+---------------------------
departure_city
| Сочи
arrival_city
| Красноярск
last_ticket_time | 2017-02-04 21:15:32.903687
tickets_num
| 1
--[ RECORD 2 ]----+---------------------------
departure_city
| Москва
arrival_city
| Сочи
last_ticket_time | 2017-02-04 21:18:40.353408
tickets_num
| 1
Чтобы увидеть комбинированную строку, которая получилась при соединении таб-
лиц tickets_directions и flights_v, можно включить в команду UPDATE предложение
RETURNING *.
Достарыңызбен бөлісу: