我有这样的声明,我试图弄清楚如何在核心数据中使用。
SELECT
(3963.0 * acos(sin(".$StartLat."/57.2958) * sin(latitude/57.2958) + cos(".$StartLat."/57.2958) * cos(latitude/57.2958) * cos(longitude/57.2958 - ".$StartLon."/57.2958))) as distance
FROM locations
ORDER BY distance
LIMIT 0, 10
我猜这是我需要修改的部分:
NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"Title" ascending:NO];
NSArray *sortDescriptors = [[NSArray alloc] initWithObjects:sortDescriptor, nil];
[fetchRequest setSortDescriptors:sortDescriptors];
提前致谢。
答案 0 :(得分:3)
简单回答:你做不到。
真实答案:您还没有理解Core Data是什么。
Core Data是一个框架,用于从内存中表示中抽象对象的持久性。它是一个对象管理框架。您通过对象与它进行交互。您不创建查询。您不执行SQL。您请求对象。全面展开,NSObject
子类。
请阅读Core Data Programming Guide。
(对不起,如果这种情况变得严厉,但这是一种常常被误解的事情,它是完全明确的)