Bạn cần phải đủ điều kiện cho bảng t1.user_id để phân biệt. Cộng với các điều chỉnh khác:
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);
-
Trừ hai ngày ra số nguyên. Truyền bị thừa.
-
Đừng bỏ qua
AStừ khóa cho bí danh cột - mặc dù thông thường bạn có thể bỏ quaAScho bí danh bảng. Hướng dẫn sử dụng:Bạn có thể bỏ qua
AS, nhưng chỉ khi tên đầu ra mong muốn không giống từ khóa PostgreSQL (xem Phụ lục C). Để bảo vệ khỏi việc bổ sung từ khóa trong tương lai, bạn nên viếtAShoặc trích dẫn kép tên đầu ra.) -
Nối các bảng với
USINGmệnh đề chỉ giữ một phiên bản của (các) cột kết hợp (user_idtrong trường hợp này) trong tập kết quả và bạn không cần phải phân loại nó nữa.