2017-01-12 3 views
2

Ich möchte eine Abfrage, die alle Benutzer aus der Tabelle "Benutzer" bekommt, und ich muss nur user.id haben.Laravel Modell Abfrage mit nur bestimmten Spalten

$users = User::all(); 

dies wird die gesamte Modell Benutzer bekommen, aber das ist ein echtes Performance-Problem für meine Anwendung. Es passieren zu viele Daten.

Ich muss einige Daten für jeden Benutzer anhängen, damit ich die Arbeitsstunden berechnen kann.

Also die Frage ist, wie alle Benutzer ohne andere Daten außer $ user-> ID zu holen?

Antwort

1

Für bestimmte Spalten, ich denke, das ist am besten:

$users = User::select('id')->get(); 

Siehe Documentation .

+1

-Code getestet und funktioniert gut, warum nach unten Abstimmung hier? ??? Lesen Sie sorgfältig den gegebenen Link zuerst. –

+1

'Wie man alle Benutzer ohne irgendwelche anderen Daten außer $ user-> id' abruft, gibt der Code die Sammlung von User-Objekten zurück, testet sie. –

+0

@Addweb Es scheint, dass einige Neulinge Bullcrap über strategische Downvoting gelesen haben. Ihr Code funktioniert einwandfrei. Upvoted. –

-1

bekommen alle Benutzerobjekte mit id nur:

$users = User::select('id')->get(); 

bekommen alle id als gerade int Wert

Laut Dokumentation: https://laravel.com/docs/5.3/queries#selects

A Select-Klausel angeben (die meisten effizient)

$users = DB::table('users')->select('id')->get(); 

eine einzelne Spalte einer Reihe Suche (aber dies wird alle Spalten verarbeitet)

$name = DB::table('users')->where('name', 'John')->pluck('name'); 
2
$name = DB::table('users')->select('id')->get(); 
+0

Dies gibt nicht das Benutzermodell, sondern nur die IDs von Benutzern zurück. Fast genauso wie zupfen! – lewis4u

0

Verwenden Sie die pluck() Methode:

$users = User::pluck('id'); 

Die zupfen Methode ruft alle Werte für einen bestimmten Schlüssel

+0

Funktioniert das mit Modell? Ich dachte, Zupfen ist Helfer für Sammlungen –

+0

Ja, es funktioniert, weil Eloquent 'pluck()' Methode auch. –

+0

Wo? https://laravel.com/api/5.3/Beleuchten/Datenbank/Eloquent/Model.html –

Verwandte Themen