Snippet Sql 1
Come calcolare la differenza tra 2 TimeStamp
SELECT
TIMESTAMPDIFF(2, CHAR(
TIMESTAMP('20230512163211845633') -
TIMESTAMP('20230512144842274398'))) DIFF_SEC
FROM SYSIBM.SYSDUMMY1
Nota:
Il primo parametro di TIMESTAMPDIFF può assumere i seguenti valori_
1 Microseconds
2 Seconds
4 Minutes
8 Hours
16 Days
32 Weeks
64 Months
128 Quarters
256 Years
Result:
---
DIFF_SEC
6.209
---
Come calcolare la data di “n” giorni – mesi – anni precedenti / successivi
SELECT
CURRENT_DATE - 7 DAYS TODAY7D,
CURRENT_DATE - 5 MONTHS TODAY5M,
CURRENT_DATE + 2 YEARS TODAY2Y
FROM SYSIBM.SYSDUMMY1
Result:
---
TODAY7D TODAY5M TODAY2Y
05/05/2023 12/12/2022 12/05/2025
---
Come ottenere data e ora correnti in decimale
SELECT
DEC(CURRENT_DATE) TODAY,
DEC(CURRENT_TIME) NOW
FROM SYSIBM.SYSDUMMY1
Result:
---
TODAY NOW
20.230.512 120.240
---
Come ottenere timestamp correnti in char e in data formattata
SELECT
CHAR(DEC(DEC(CURRENT_TIMESTAMP)*1000000, 20, 0)) TIMESTCHAR,
CHAR(DEC(DEC(CURRENT_TIMESTAMP), 14, 0)) TIMECHAR,
CHAR(VARCHAR_FORMAT(DATE(TIMESTAMP_FORMAT(CHAR(20230512),
'YYYYMMDD')),'DD/MM/YYYY'), 10) DATE
FROM SYSIBM.SYSDUMMY1
Result:
---
TIMESTCHAR TIMECHAR DATE
20230512120240100000 20230512120240 12/05/2023
---
Come ottenere utente corrente
SELECT
CURRENT_USER UTENTE_CORRENTE
FROM SYSIBM.SYSDUMMY1
Result:
---
UTENTE_CORRENTE
USR001
---
