SQL liteデータベースの結果を日付でフィルタリングしようとしていますが、iOSの日付と時刻のオブジェクトがひどく、その方法がよくわかりません。NSPredicateを設定して、今日、過去7日間、過去30日間、過去90日間で結果をフィルタリングするにはどうすればよいですか?
ありがとう
SQL liteデータベースの結果を日付でフィルタリングしようとしていますが、iOSの日付と時刻のオブジェクトがひどく、その方法がよくわかりません。NSPredicateを設定して、今日、過去7日間、過去30日間、過去90日間で結果をフィルタリングするにはどうすればよいですか?
ありがとう
例
- (NSPredicate *)predicateForDateWithinLast30Days
{
NSDate *currentDate = [NSDate date];// get the current date
// get the date 30 days prior to current date
NSCalendar *calendar = [NSCalendar currentCalendar];
NSDateComponents *dateComps = [[NSDateComponents alloc] init];
[dateComps setDay:-30];
NSDate *date30DaysAgo = [calendar
dateByAddingComponents:dateComps
toDate:currentDate options:0];
// create the predicate
NSPredicate *last30DaysPredicate = [NSPredicate
predicateWithFormat:@"dateToCompare > %@", date30DaysAgo];
return last30DaysPredicate;
}