2017-02-20 2 views
-3

У меня есть массив имен записей (или строк). Я хочу получить любую запись в общедоступной базе данных, которая имеет любое из этих имен записей. Как я могу это сделать?Получение нескольких записей по имени записи

+5

какой-то код предположительно? Вы пытались написать некоторые? –

ответ

2

Вы должны применить что-то вроде этого ...

let filter: [String] = [ "String1", "String2", "String3" ] 

let predicate: NSPredicate = NSPredicate(format: "%k IN %@", "record_name", filter) 
let query: CKQuery = CKQuery(recordType: "RecordType", predicate: predicate) 

CKContainer.default.publicCloudDatabase.perform(query, inZoneWith: nil, completionHandler: { @escaping ([CKRecord]?, Error?) -> Void in 
    // Do what you want with your filtered CKRecords ;) 
}) 

NSPredicate использует агрегированный оператор IN для фильтрации по содержимому массива. Больше информации на Predicate Programming Guide

Смежные вопросы