DATE_SUB
je funkce MySQL, která v PostgreSQL neexistuje.
Můžete (například) buď použít;
NOW() - '30 MINUTES'::INTERVAL
...nebo...
NOW() - INTERVAL '30' MINUTE
...nebo...
NOW() - INTERVAL '30 MINUTES'
jako náhradu.
Sqlfiddle se všemi 3 k testování .