Để mở rộng câu trả lời đúng của Mark, PostgreSQL không giữ dấu thời gian của hàng và nó không giữ các hàng theo bất kỳ thứ tự cụ thể nào. Trừ khi bạn xác định các bảng của mình bằng một cột chứa dấu thời gian mà chúng đã được chèn vào, không có cách nào để chọn chúng theo thứ tự chúng được chèn.
PostgreSQL thường sẽ trả lại chúng theo thứ tự mà chúng đã được chèn vào, nhưng đó chỉ là vì chúng tình cờ theo thứ tự đó trên đĩa. Điều này sẽ thay đổi khi bạn thực hiện update
s trên bàn, hoặc deletes
rồi sau đó insert
S. Các thao tác như vacuum full
cũng thay đổi nó. Bạn không bao giờ được dựa vào đơn đặt hàng mà không có order by
mệnh đề.
Ngoài ra, nếu bạn muốn dấu thời gian chèn khác nhau cho các hàng trong giao dịch, bạn có thể sử dụng clock_timestamp
thay vì now()
. Ngoài ra, vui lòng sử dụng current_timestamp
theo tiêu chuẩn SQL thay vì viết now()
.