1

NSFetchRequest 获取属性的最大值。

但结果每次都变成不同的。

这是我的代码。

- (NSInteger)getMaxTimeStamp
{
    NSManagedObjectContext *context = [委托 managedObjectContext];

NSFetchRequest *fetchRequest = [[NSFetchRequest alloc] init]; [fetchRequest setEntity:[NSEntityDescription entityForName:@"Relation" inManagedObjectContext:context]]; [fetchRequest setIncludesPropertyValues:NO]; //only fetch the managedObjectID NSSortDescriptor *sort = [[NSSortDescriptor alloc] initWithKey:@"ts" ascending:NO]; [fetchRequest setFetchLimit:1]; [fetchRequest setSortDescriptors:[NSArray arrayWithObject:sort]]; NSError * error = nil; Relation *relation = [context executeFetchRequest:fetchRequest error:&error].lastObject; //error handling goes here if (error) { NSLog(@"ERROR: %@",[error localizedDescription]); } if (relation.ts) { return (NSInteger)relation.ts; }else { return 0; }

}

我为结果日志循环了 10 次

  • 2012-07-03 11:05:55.831 Edusorf [1956:15803] 最大时间戳:136934464
  • 2012-07-03 11:05:55.831 Edusorf [1956:15803] 最大时间戳:137170400
  • 2012-07-03 11:05:55.832 Edusorf [1956:15803] 最大时间戳:137106624
  • 2012-07-03 11:05:55.832 Edusorf [1956:15803] 最大时间戳:137154096
  • 2012-07-03 11:05:55.833 Edusorf [1956:15803] 最大时间戳:137107392
  • 2012-07-03 11:05:55.833 Edusorf [1956:15803] 最大时间戳:137115728
  • 2012-07-03 11:05:55.833 Edusorf [1956:15803] 最大时间戳:137110608
  • 2012-07-03 11:05:55.834 Edusorf [1956:15803] 最大时间戳:136828592
  • 2012-07-03 11:05:55.834 Edusorf [1956:15803] 最大时间戳:136995824
  • 2012-07-03 11:05:55.835 Edusorf [1956:15803] 最大时间戳:136925072

有人可以帮我吗?谢谢~~

4

1 回答 1

0

ts在数据模型中将类型更改为日期。

于 2012-07-03T04:10:57.547 回答