Budete muset kvalifikovat tabulku t1.user_id vyjasnit. Plus další úpravy:
CREATE TABLE foo AS
SELECT user_id, (t1.the_date - (t2.the_date - t1.the_date)) AS start_date
FROM table1 t1
JOIN table2 t2 USING (user_id);
-
Odečtením dvou dat získáte celé číslo. Obsazení bylo nadbytečné.
-
Nevynechejte
ASklíčové slovo pro aliasy sloupců – i když je obecně v pořádku vynechatASpro aliasy tabulek. Manuál:ASmůžete vynechat , ale pouze v případě, že požadovaný název výstupu neodpovídá žádnému klíčovému slovu PostgreSQL (viz Příloha C). Pro ochranu před možným budoucím přidáním klíčových slov se doporučuje, abyste vždy buď napsaliASnebo uveďte název výstupu do dvojitých uvozovek.) -
Spojení tabulek pomocí
USINGklauzule ponechává pouze jednu instance spojovacích sloupců (user_idv tomto případě) ve výsledkové sadě a již ji nemusíte kvalifikovat do tabulky.