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
AS
từ khóa cho bí danh cột - mặc dù thông thường bạn có thể bỏ quaAS
cho 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ếtAS
hoặc trích dẫn kép tên đầu ra.) -
Nối các bảng với
USING
mệnh đề chỉ giữ một phiên bản của (các) cột kết hợp (user_id
trong 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.