SQL-запрос в основных данных - PullRequest
0 голосов
/ 29 июля 2011

Я знаю, как написать запрос, который мне нужен, в SQL, но не могу найти способ реализовать его с помощью Core Data, или, если я найду решение, оно будет уродливым и грязным, используя более 20 строк кода ...

Мой запрос SELECT MAX(distance) FROM DataTrip WHERE idTrip = (SELECT DISTINCT(idTrip) FROM DataTrip);

Любая идея, как мне это сделать, используя Core Data с NSSortDescriptor, NSPredicate, NSExpressionDescription и т. Д .?

Спасибо!

Обновление 1

Модель данных для объекта DataTrip:

@interface DataTrip : NSManagedObject {
@private
}
@property (nonatomic, retain) NSNumber * speed;
@property (nonatomic, retain) NSNumber * heading;
@property (nonatomic, retain) NSNumber * longitude;
@property (nonatomic, retain) NSNumber * timestamp;
@property (nonatomic, retain) NSNumber * latitude;
// More properties here
@property (nonatomic, retain) NSNumber * idTrip;
@property (nonatomic, retain) NSNumber * distance;

@end

Таким образом, в моей базе данных будет несколько строк с одним и тем же idTrip, и я хочумаксимальное значение расстояния для каждого idTrip.

1 Ответ

2 голосов
/ 29 июля 2011

На этот вопрос сложно ответить, поскольку он основан на предположении, что SQL и Core Data имеют какое-либо отношение друг к другу. На самом деле они имеют мало общего друг с другом. Базовые данные не являются базой данных и не должны рассматриваться как единое целое. Способ выполнения задачи, указанной вами в вопросе, сильно зависит от модели данных, которую вы создали. Без этой информации невозможно предоставить более полезную информацию.

...