Wie Sie sehen können, habe ich zwei Ein-Viele-Beziehungen. Ist es möglich, eine solche verschachtelte SUBQUERY zu schreiben, in der ich alle A auswählen möchte, wo irgendwelche der zugehörigen C-s unter irgendwelchen von B zu A gehörenden eine bestimmte Bedingung erfüllen?Ist es möglich geschachtelte SUBQUERY in NSPredicate zu verwenden?
6
A
Antwort
10
können verschachtelt Unterabfrage in einem Prädikat. Aber es scheint, dass ein einzelner UNTERABFRAGE hier ausreichend ist (wenn ds
ist eine zu-eins Beziehung C
-D
), zum Beispiel
[NSPredicate predicateWithFormat:@"SUBQUERY(bs, $x, ANY $x.cs.ds.name = %@)[email protected] > 0", name];
Und wenn ich den verschachtelten Unterabfrage Ansatz verwenden würde, wie könnte ich tun, Warum geben die folgenden Fehler? SUBQUERY (BS, $ B, SUBQUERY (CS, $ C, $ ds.name! = "Xxx"). @ Count). @ Count> 0 –
@ János: Es scheint, dass Sie es bereits in http gelöst haben://stackoverflow.com/questions/13242383/why-is-wrong-in-my-nested-subquery-predicate. –
@martin: haben Sie auf Realm db arbeiten, ich möchte die gleiche Sache in Realm db tun, aber oben Abfrage wird nicht ausgeführt, also Wenn Sie eine Idee diesbezüglich haben, lassen Sie mich bitte wissen, danke im Voraus –