iphone - 在核心数据(Objective-C,iPhone,Xcode)中选择不同的值(2个或更多)

标签 iphone ios objective-c xcode core-data

如何在核心数据中进行此SQLite查询(iOS开发)?

SELECT DISTINCT VALUE_1, VALUE_2 FROM TABLE;

例如,它应该从该表返回(二重奏,三重奏)不同的值:
(123, 234, Car)
(123, 456, Bus)
(234, 456, Train)
(123, 456, Eletric Bus)
(234, 456, Subway)

它应该返回3行,因为(123, 234)是UNIQUE,所以(234, 456)(123, 456)
(123, 234, Car)
(234, 456, Train) or (234, 456, Subway)
(123, 456, Eletric Bus) or (123, 456, Bus)

使用此代码,我只能区分一个值:
NSDictionary *entityProperties = [entity propertiesByName];
[request setPropertiesToFetch:[NSArray arrayWithObject:[entityProperties objectForKey:@"VALUE_1"]]];
[request setReturnsDistinctResults:YES];
[request setResultType:NSDictionaryResultType];

最佳答案

您可以指定一个以上的唯一属性来获取:

[request setPropertiesToFetch:@[@"VALUE_1", @"VALUE_2"]];
[request setReturnsDistinctResults:YES];
[request setResultType:NSDictionaryResultType];

(请注意,您可以提供属性名称列表,而不是属性
说明。)

这应该返回这样的字典数组:

[
{“VALUE_1” = 123; “VALUE_2” = 234},
{“VALUE_1” = 234; “VALUE_2” = 456},
{“VALUE_1” = 123; “VALUE_2” = 456},
]

但是,(我知道)没有办法另外提出获取请求
从“随机选择”的对象返回第三个属性。

关于iphone - 在核心数据(Objective-C,iPhone,Xcode)中选择不同的值(2个或更多),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17234420/

相关文章:

iphone - 您如何将口语单词与音频文件进行比较?

ios - 如何在 iOS 中获取正确的当前时间?

objective-c - 在标签栏的特定标签中打开应用程序

iphone - 追加 NSData

iphone - iPhone 上 INSERT 的 SQLite 行为

iphone - 关于从我的 iOS 应用程序进行 Facebook 单点登录的问题

objective-c - ios 整数到 int 或 .5

ios - NSInteger 乘法 : Invalid operands to binary expression

ios - 未调用 UIPicker 的方法 titleForRow

iphone - 如何在 uibutton 中分配两次标题