Arytmetyka kolumn daty w zapytaniu PostgreSQL
Mam dwie tabele, które wyglądają tak:
CREATE TABLE table1 (user_id int, the_date date);
CREATE TABLE table2 (user_id int, the_date date, something_else real);
Piszę zapytanie, które wygląda tak
CREATE TABLE foo AS
SELECT t1.user_id
, (t1.the_date - (t2.the_date - t1.the_date)::int) start_date
FROM table1 t1, table2 t2
where t1.user_id=t2.user_id
;
Po uruchomieniu powyższego zapytania pojawia się następujący błąd wyświetlany na konsoli psql:
ERROR: syntax error at or near "$1"
LINE 1: ...the_date - (t2.the_date - t1.the_date)::int) $1 ...
^
Druga kolumna w wynikach zapytania to wyświetlanie datyN days BEFORE
data w tabeli 1, gdzie N jest różnicą (w dniach) między datą w tabeli 2 i tabelą 1.
Uwaga:table2
zawsze będzie miał późniejsze daty niż daty wtable1
.
Jak mogę wykonać obliczenie daty i zapisać wynik jako nowy alias kolumny w zapytaniu?
Używam PG 8.4.