2016-05-17 4 views
0

Ich bin mit Zucker mit Android zu versuchen, nur ein Ergebnis meiner Liste zu erhaltenWie nur ein Element mit ‚Limit‘ in einer Liste in Zucker bekommt

Dies ist die Abfrage, die ich versuche, ...

String myName = "Steve"

List<MyClass> existingHniNetwork = MyClass.find(MyClass.class, "name=?", myName, null, null, "1"); 

Dies ist das Beispiel, das ich von der oficial Dokumentation, aber nicht sicher, ob ich gut angewendet werde:

find(Class<T> type, String whereClause, String[] whereArgs, String groupBy, String orderBy, String limit) 

Meine Abfrage keine Ergebnisse finden, aber wenn ich das tue, kann ich eine Liste bekommen, aber ich nur ein ein Ergebnis dieser Liste:

List<MyClass> existingHniNetwork = MyClass.find(MyClass.class, "name=?", myName); 
+0

"one man" Ergebnis? –

+0

Ja, nur ein Ergebnis, Stellen Sie sich vor, ich hätte eine Liste von 4 Personen mit dem gleichen Namen, ich möchte nur einen von ihnen bekommen, vielleicht den ersten. Dafür versuche ich Limit 1 zu verwenden, um nur ein Ergebnis zu erhalten, wenn die Abfrage übereinstimmt. –

+0

Grundsätzlich möchte ich eine Abfrage dieser beiden durchführen: Liste authors = Author.find (Author.class, "full_name = ? "," Nathan "); Liste books = Book.findWithQuery (Book.class, "Select * from Book limit?", "4"); kann nach Autor suchen und das Ergebnis einschränken –

Antwort

1

Aus Ihrer Beschreibung, erfordert find Methode ein Array von String für die whereArgs, können Sie dies versuchen und sehen, ob es für Sie arbeitet:

List<MyClass> existingHniNetwork = MyClass.find(MyClass.class, "name=?", new String[]{myName}, null, null, "1"); 
0

Verwenden Sie den folgenden Code

List<MyClass> existingHniNetwork = MyClass.find(MyClass.class, "name=?", new String[]{myName}, null, null, "1"); 

Hier ist die Methode Signatur für Fund()

find(Class<T> type, String whereClause, String[] whereArgs, String groupBy, String orderBy, String limit) 

Dokumentation Link:http://satyan.github.io/sugar/query.html

Verwandte Themen