Domanda

Sto sviluppando un sistema multi-database.
Voglio la differenza tra due date in pochi secondi.
In SQL Server ho ricevuto:
DATEDIFF (seconda, data stellare, enddate)
In MySql :
TIME_TO_SEC (TimeDiff (data stellare, enddate))

La mia domanda:
Sql Ansi ha funzioni per gestire i valori di DateTime?
ovvero: Esistono funzioni di data e ora generiche per tutti i database?

È stato utile?

Soluzione

Secondo SQL: 1999, date1-date0 dovrebbe fornire un valore di tipo INTERVAL, una struttura dalla quale dovresti essere in grado di estrarre ANNO, MESE, GIORNO, ecc.

Non l'ho mai usato e non credo che sia ampiamente supportato (anche se potrei non essere aggiornato). Se stai eseguendo l'aritmetica del tempo nel livello del database e vuoi essere compatibile tra DBMS, la solita soluzione consiste semplicemente nell'utilizzare i timestamp interi (di qualsiasi risoluzione, ma il tempo Unix è comune) e l'aritmetica intera intera semplice che è completamente affidabile -Piattaforma.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top