Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

279
Vistas
Resolución de fecha y hora de Postgresql de milisegundos compatible con Javascript Fecha

Tengo una columna de marca de tiempo en una tabla PostgreSQL (13.3) en Supabase. Actualmente almacena marcas de tiempo con una resolución de microsegundos. Quiero enviar las marcas de tiempo a un cliente de JavaScript y usarlas para consultar (a través de Supabase) las filas que coinciden exactamente con este valor de marca de tiempo. Los objetos de fecha de Javascript eliminan los microsegundos y solo almacenan los milisegundos. Podría almacenar la cadena de microsegundos junto con el objeto Fecha (que necesito para la presentación en varios componentes de la interfaz de usuario) en el cliente de JavaScript, pero esto parece innecesariamente complicado y propenso a errores, ya que los datos duplicados podrían perder la sincronización.

¿Es posible forzar que los valores de marca de tiempo creados en PostgreSQL tengan siempre una resolución de milisegundos y no de microsegundos? Actualmente estoy usando lo siguiente para CREATE TABLE y dentro de la función upsert:

 CREATE TABLE abc ( -- other fields modified_at timestamp without time zone DEFAULT now()::timestamp(3) NOT NULL );
 UPDATE abc SET -- other fields modified_at = now()::timestamp(3) WHERE modified_at = item.modified_at;

Relacionado con esta pregunta .

about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

La marca de tiempo acepta un argumento para la cantidad de lugares decimales que se deben mantener para que pueda definir su tabla usando:

 modified_at timestamp(3) without time zone DEFAULT now() NOT NULL

Esto significa que siempre tendrá 000 microsegundos que siempre funcionarán con el objeto Date de Javascript.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Si quieres puedes usar CREAR DOMINIO :

 create domain js_ts timestamptz(3); create table js_tz_test(id int, ts_fld js_ts); \d js_tz_test Table "public.js_tz_test" Column | Type | Collation | Nullable | Default --------+---------+-----------+----------+--------- id | integer | | | ts_fld | js_ts | insert into js_tz_test values (1, now()); select * from js_tz_test ; id | ts_fld ----+---------------------------- 1 | 2021-09-29 09:00:45.626-07 select now()::js_ts; now ---------------------------- 2021-09-29 09:04:55.388-07
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda