Je compare un horodatage unix en microsecondes et un temps avec strftime. Pour ce faire, je dois utiliser une unité commune. Je ne comprends pas pourquoi cela fonctionne en microsecondes (ie en multipliant strftime par 1 million) mais pas l'inverse.comparaison de date avec strftime en sqlite
SELECT
strftime("%s", "2017-04-01 00:00:00") AS Apr1st,
1492605353892000/1000000 as d,
strftime("%s", "2017-04-01 00:00:00")*1000000 As Apr1st_us,
1492605353892000 AS d_us,
1492605353892000/1000000 > strftime("%s", "2017-04-01 00:00:00") AS cmp,
1492605353892000/1000000 - strftime("%s", "2017-04-01 00:00:00") AS diff,
1492605353892000 > strftime("%s", "2017-04-01 00:00:00")*1000000 AS cmp_us,
1492605353892000 - strftime("%s", "2017-04-01 00:00:00")*1000000 AS diff_us
;
qui me donne:
| Apr1st | d | Apr1st_us | d_us | cmp | diff | cmp_us | diff_us |
|------------|------------|------------------|------------------|-----|---------|--------|---------------|
| 1491004800 | 1492605353 | 1491004800000000 | 1492605353892000 | 0 | 1600553 | 1 | 1600553892000 |
Merci, j'ai vraiment eu du mal pour 40min avant de savoir quel était le problème. –