Napisz rodzimy SQL w danych podstawowych

Muszę napisać natywną kwerendę SQL podczas korzystania z danych podstawowych w moim projekcie. Naprawdę muszę to zrobić, odkąd używamNSPredicate teraz i to nie jest wystarczająco wydajne (tylko w jednym przypadku). Po prostu muszę napisać kilka podkwerend i złączeń, aby pobrać dużą liczbę wierszy i posortować je według specjalnego pola. W szczególności muszę posortować je według sumy wartości ich dzieci-elementów. W tej chwili pobieram wszystko za pomocą NSPredicate, a następnie sortuję mój wynik (tablicę) ręcznie, ale trwa to zbyt długo, ponieważ istnieje wiele tysięcy wyników.

Popraw mnie, jeśli się mylę, ale jestem pewien, że nie może to być ogromne wyzwanie, ponieważ istnieje sposób na używanie sqlite w aplikacjach iOS.

Byłoby wspaniale, gdyby ktoś mógł poprowadzić mnie we właściwym kierunku. Z góry dziękuję.

EDYTOWAĆ: Pozwól mi wyjaśnić, co robię. Oto mój model Coredata:

A oto jak wygląda mój wynik na iPadzie:

Pokazuję tabelę z jednym wierszem na klienta, gdzie każdy klient ma kwotę sprzedaży dokonaną od stycznia do czerwca 2012 r. (Ostatnia) i 2013 r. (Curr). ObokCurr istnieje różnica między tymi dwiema wartościami. To samo dotyczy marży brutto i wskaźnika pokrycia.

Każdy klient jest zapisany wKunde stół i każdyKunde ma kilkaPbsRows.PbsRow faktycznie posiada sumę kwot sprzedaży miesięcznie.

Więc co robię, aby pokazać te wyniki, to pobrać wszystkiePbsRows między styczniem a czerwcem 2013 r., a następnie:

self.kunden = [NSMutableOrderedSet orderedSetWithArray:[pbsRows valueForKeyPath:@"kunde"]];

Teraz mam wszystkich klientów (Kunde), którzy mają rekordy między styczniem a czerwcem 2013 r. Następnie używam pętli for do obliczenia sumy dla każdego pojedynczego klienta.

Chodzi o to, aby uzyskać kwoty sprzedaży w bieżącym roku i porównać je z ubiegłym rokiem. Złą rzeczą jest to, że jest wielu klientów ifor-loop trwa bardzo długo :-(

questionAnswers(3)

yourAnswerToTheQuestion