See https://sqlite.org/draft/datatype3.html in section 4.1, Sort Order. Any
integer is less than any text. So you'll want to have both as one of the number
types to do valid comparison.
4.1 Sort Order
The results of a comparison depend on the storage classes of the operands,
according to the following rules:
A value with storage class NULL is considered less than any other value
(including another value with storage class NULL).
An INTEGER or REAL value is less than any TEXT or BLOB value. When an
INTEGER or REAL is compared to another INTEGER or REAL, a numerical comparison
is performed.
A TEXT value is less than a BLOB value. When two TEXT values are compared
an appropriate collating sequence is used to determine the result.
When two BLOB values are compared, the result is determined using memcmp().
sqlite> select typeof(strftime('%s', '2017-10-11 10:04:43') + 300);
typeof(strftime('%s', '2017-10-11 10:04:43') + 300)
integer
sqlite> select typeof(strftime('%s', '2017-10-11 10:04:43'));
typeof(strftime('%s', '2017-10-11 10:04:43'))
text
David Raymond | GIS Engineer | TomTom | Lebanon, NH, United States
e-mail: [email protected] | office +1 603 306 8498 | www.tomtom.com
-----Original Message-----
From: sqlite-users [mailto:[email protected]] On
Behalf Of Eric Bollengier
Sent: Wednesday, October 11, 2017 8:55 AM
To: [email protected]
Subject: [sqlite] Possible bug with strftime('%s') < strftime('%s')
Hello,
I have noticed a problem in SQLite 3.20.1 for a simple operation based
on strftime('%s').
With SQLite 3.20.1 and 3.6.18
sqlite> select (strftime('%s', '2017-10-11 10:04:43') + 300) <
strftime('%s', '2017-10-11 10:04:43');
1
If I use the CAST operator on the second member, it works
sqlite> select
(strftime('%s', '2017-10-11 10:04:43') + 300) < CAST(strftime('%s',
'2017-10-11 10:04:43') as decimal);
0
If I use the following query, it works too:
sqlite> select
(strftime('%s', '2017-10-11 10:04:43') + 300 - strftime('%s',
'2017-10-11 10:04:43')) < 0;
0
on SQlite 2.8, the operator < with strftime('%s') works.
Any idea if it is the expected behavior?
Thanks,
Best Regards,
Eric
_______________________________________________
sqlite-users mailing list
[email protected]
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users
_______________________________________________
sqlite-users mailing list
[email protected]
http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users