Hello,
Firebird 3.0.8.33429 (SS, Windows).
DATEADD supports "fractional value for MILLISECOND"
select CAST(DATEADD(MILLISECOND, 0.1, timestamp '0001-01-01') AS VARCHAR(32)) from RDB$DATABASE
returns 0001-01-01 00:00:00.0001
And EXTRACT supports "fractional value for MILLISECOND"
select CAST(EXTRACT(MILLISECOND from timestamp '0001-01-01 00:00:00.0001') AS VARCHAR(32)) from RDB$DATABASE
returns 0.1
But DATEDIFF does not support "fractional value for MILLISECOND"
select CAST(DATEDIFF(MILLISECOND FROM timestamp '0001-01-01' TO timestamp '0001-01-01 00:00:00.0001') AS VARCHAR(32)) from RDB$DATABASE
returns 0 (BIGINT value)
This limitation creates a some problem with correct translations of System.TimeSpan functional (C#, EFCore).
It will be nice see improving of this in FB3 also.
Thanks.
Hello,
Firebird 3.0.8.33429 (SS, Windows).
DATEADD supports "fractional value for MILLISECOND"
select CAST(DATEADD(MILLISECOND, 0.1, timestamp '0001-01-01') AS VARCHAR(32)) from RDB$DATABASEreturns 0001-01-01 00:00:00.0001
And EXTRACT supports "fractional value for MILLISECOND"
select CAST(EXTRACT(MILLISECOND from timestamp '0001-01-01 00:00:00.0001') AS VARCHAR(32)) from RDB$DATABASEreturns 0.1
But DATEDIFF does not support "fractional value for MILLISECOND"
select CAST(DATEDIFF(MILLISECOND FROM timestamp '0001-01-01' TO timestamp '0001-01-01 00:00:00.0001') AS VARCHAR(32)) from RDB$DATABASEreturns 0 (BIGINT value)
This limitation creates a some problem with correct translations of System.TimeSpan functional (C#, EFCore).
It will be nice see improving of this in FB3 also.
Thanks.