-Magie. Die Methode delegiert den Zugriff auf die MitgliedsmethodeKürzlich untersucht der Herausgeber das sogenannte beste Framework der Welt – Laravel. Tatsächlich ist der Lernrahmen die Idee des Lernrahmens! Ich möchte einige meiner Erfahrungen beim Lernen von Laravel in meinem Blog festhalten. Jeder ist herzlich eingeladen, meinen anderen GitHub-Blogs und Kurzbüchern zu folgen, um miteinander zu kommunizieren!
Version: Laravel 5.2
Appearance-Objekts zu verwenden, um die SQL-Abfrage direkt auszuführen, und die andere darin, die statische Methode der Model-Klasse zu verwenden (eigentlich auch die Implementierung von Facade, die den statischen Zugriff verwendet). Methode, um auf das Modell zuzugreifen, und verwendet intern die
Datenbank: mysql 5.7
PHP7.1 Eine besteht darin, die statische Methode des
-Objekt wird die Verwendung dieser Methode empfohlen, die klarer ist DB
callStatic
Alle Datenspalten aus der Datentabelle abrufen#
$results = DB::select('select * from users where id = ?', [1]);foreach ($results as $res) { echo $res->name; }
StdClass
Wenn Sie nur den Wert einer Spalte benötigen, können Sie die Wertmethode verwenden, um den Wert einer einzelnen Spalte direkt zu erhalten
$results = DB::select('select * from users where id = :id', ['id' => 1]);
$users = DB::table('users')->get(); foreach ($users as $user) { var_dump($user->name); }
$user = DB::table('users')->where('name', 'John')->first(); echo $user->name;
< abfragen in der Zeichentabelle. 🎜>
Die$email = DB::table('users')->where('name', 'John')->value('email');
Der erste Parameter ist die abzufragende Spalte und der zweite Parameter ist der Schlüssel jeder Spalte
DB::table('users')->chunk(100, function($users){ foreach ($users as $user) { // } });
Aggregationsfunktionenfalse
usw. bereit.
title
Ausgewählte Abfragebedingungen angeben
$titles = DB::table('roles')->pluck('title');foreach ($titles as $title) { echo $title; }
pluck
Collection pluck( string $column, string|null $key = null)
$roles = DB::table('roles')->pluck('title', 'name');foreach ($roles as $name => $title) { echo $title; }
-Ausdruck count,max,min,avg,sum
#
$users = DB::table('users')->count(); $price = DB::table('orders')->max('price'); $price = DB::table('orders')->where('finalized', 1)->avg('price');
$users = DB::table('users')->select('name', 'email as user_email')->get();
Inner Join#
$query = DB::table('users')->select('name');$users = $query->addSelect('age')->get();
$users = DB::table('users')->distinct()->get();
Wenn die Einschränkungen der Join-Methode komplexer sind, können Sie eine Abschlussfunktion verwenden, um sie anzugeben
Wenn Sie verwenden möchten Um die Spaltenwerte mit dem angegebenen Array in den Join-Einschränkungen zu vergleichen, können Sie die Methoden where und OrWhere verwenden DB::raw
$users = DB::table('users') ->select(DB::raw('count(*) as user_count, status')) ->where('status', '<>', 1) ->groupBy('status') ->get();
Die Methode kann auch mit denselben Parametern wie Union verwendet werden.
$users = DB::table('users') ->join('contacts', 'users.id', '=', 'contacts.user_id') ->join('orders', 'users.id', '=', 'orders.user_id') ->select('users.*', 'contacts.phone', 'orders.price') ->get();
Einfache Where-Bedingungen#
DB::table('users') ->leftJoin('posts', 'users.id', '=', 'posts.user_id') ->get();
Das obige ist der detaillierte Inhalt vonLaravel Learning – Beispielcode-Sharing für Datenbankoperationen und Abfragekonstruktoren. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!