如何在iphone应用程序中按日期从sqlite表中获取数据

时间:2013-11-05 04:28:14

标签: ios sqlite

我有一个iPhone应用程序,我在Content表中有数据,表ContentAddedDateTime中有一列,其中是我想在查询中选择的日期时间ContentAdded最近在ContentTable中添加了内容,知道如何获得此内容。

这是表结构:

NSInteger contentID;
NSString*categoryID;
NSString*topicID;
NSString*contentType;
NSString*contentTitle;
NSString*contentAddedByUserID;
NSString*contentDescription;
NSString*contentFileName;
NSString*categoryName;
NSString*topicName;
NSString*contentSavedFileLocation;
NSString*contentSize;
NSString*contentAddedDateTime;

我有链接,我们可以使用开始日期和结束日期,但我只有一列ContentAddedDateTime

select = [[NSString alloc] initWithFormat:@"select * FROM ContentMaster Where ContentAddedDateTime='%@'",currentDateTime];

3 个答案:

答案 0 :(得分:3)

请使用以下结构。

SELECT column_name,column_name
FROM table_name
ORDER BY column_name,column_name ASC|DESC;

例如:

SELECT * FROM ContentMaster
ORDER BY ContentAddedDateTime DESC;

答案 1 :(得分:1)

向查询添加order by ContentAddedDateTime desc。第一个结果将是最新的。

答案 2 :(得分:0)

以上所有查询在这种情况下都不起作用首先让我清楚一点,sqlite将'Date'类型视为String,所有比较都是使用Strings类型完成的,所以你必须转换日期到UNIX Milli秒,然后根据UNIX时间戳

手动对它们进行排序
time_t unixTime = (time_t) [dateObject timeIntervalSince1970];