sqlite3 - sqlite date compare: Any idea why the following sqlite select with time > date('now') doesn't return the collect row? -
sqlite3 - sqlite date compare: Any idea why the following sqlite select with time > date('now') doesn't return the collect row? -
tlee@tlee-vm:~/work/hl$ sqlite3 sdb/testuserssdb.db "select * users timecreate > date('now')" 1|test0@test.com|testuser|test_pass|0|2011-07-01 05:49:19.365472|2011-07-01 05:49:19.395194 2|test1@test.com|testuser1|test_pass_new|10|2011-07-01 05:49:19.376098|2011-07-01 05:49:19.394416 3|test_1@test.com|testuser_1|test_pass_1|2|2011-07-01 05:49:19.407550|2011-07-01 05:49:19.407550 tlee@tlee-vm:~/work/hl$ sqlite3 sdb/testuserssdb.db "select datetime('now'); " 2011-07-01 06:22:44 tlee@tlee-vm:~/work/hl$ sqlite3 sdb/testuserssdb.db "select * users timecreate < date('now')" tlee@tlee-vm:~/work/hl$ sqlite3 sdb/testuserssdb.db "select * users timecreate < date('now', '-5 minutes')" tlee@tlee-vm:~/work/hl$ sqlite3 sdb/testuserssdb.db ".dump" begin transaction; create table users (user_id integer primary key, email text, username text, password text, usertype int, timecreate date, lastlogin date); insert "users" values(1,'test0@test.com','testuser','test_pass',0,'2011-07-01 05:49:19.365472','2011-07-01 05:49:19.395194'); insert "users" values(2,'test1@test.com','testuser1','test_pass_new',10,'2011-07-01 05:49:19.376098','2011-07-01 05:49:19.394416'); ....
just seek query, still doesn't work:
tlee@tlee-vm:~/work/hl$ sqlite3 sdb/testuserssdb.db "select datetime(timecreate) users " 2011-07-01 05:49:19 2011-07-01 05:49:19 tlee@tlee-vm:~/work/hl$ sqlite3 sdb/testuserssdb.db "select * users datetime(timecreate) < date('now', '-5 minutes')" tlee@tlee-vm:~/work/hl$ sqlite3 sdb/testuserssdb.db "select * users datetime(timecreate) > date('now', '-5 minutes')" 1|test0@test.com|testuser|test_pass|0|2011-07-01 05:49:19.365472|2011-07-01 05:49:19.395194 2|test1@test.com|testuser1|test_pass_new|10|2011-07-01 05:49:19.376098|2011-07-01 05:49:19.394416 tlee@tlee-vm:~/work/hl$ sqlite3 sdb/testuserssdb.db "select datetime('now', '-5 minutes'); " 2011-07-01 08:24:06 i expect "<" query homecoming row , not ">".
you comparing date datetime date function returns date not date time:
sqlite> select date('now', '-5 minutes'); 2011-07-07 so utilize datetime function instead:
sqlite> select datetime('now', '-5 minutes'); 2011-07-07 17:23:29 sqlite sqlite3
Comments
Post a Comment