sql >> Base de Datos >  >> RDS >> PostgreSQL

PostgreSQL:recuperación de elementos en el orden en que fueron almacenados

Para ampliar la respuesta correcta de Mark, PostgreSQL no mantiene una marca de tiempo de fila y no mantiene las filas en ningún orden en particular. A menos que defina sus tablas con una columna que contenga la marca de tiempo en la que se insertaron, no hay forma de seleccionarlas en el orden en que se insertaron.

PostgreSQL a menudo los devolverá en el orden en que se insertaron de todos modos, pero eso es solo porque están en ese orden en el disco. Esto cambiará a medida que haga update s en la tabla, o deletes luego más tarde insert s. Operaciones como vacuum full también cambiarlo. Nunca debe confiar en el pedido sin un order by explícito cláusula.

Además, si desea que la marca de tiempo de inserción difiera para las filas dentro de una transacción, puede usar clock_timestamp en lugar de now() . Además, utilice el estándar SQL current_timestamp en lugar de escribir now() .