我需要进行查询(在sqlite3上)并获取特定日期的所有记录,例如当天13/02/2018 在数据库中,我将它保存为属性'annotated'作为datetime 如果我进行查询,它会以毫秒为单位。例如'1519321923630' 我试过这样的东西,但是没用。它没有给我带来结果,但如果有真的
"SELECT * from coupons where annotated = '13022018' ";
答案 0 :(得分:1)
您需要使用SQLite date
函数来获取相关日期,如下所示:
SELECT * FROM coupons WHERE date(annotated, 'unixepoch') = '2018-02-13';
此查询假设数据实际上存储为Unix时钟,或者是Unix时代的整数秒。
如果您的数据实际上存储为毫秒数,假设开始时间相同,那么您应该使用
SELECT * FROM coupons WHERE date((annotated/1000), 'unixepoch') = '2018-02-13';
因为SQLite不支持毫秒级分辨率。如果数据是任意开始时间的毫秒数,那么在SQLite将其识别为有效日期/时间之前,您必须找到一些标准化方法。
编辑 - 忘记加入' unixepoch'修饰符字符串。