sql >> Databáze >  >> RDS >> Mysql

Laravel:získání jedné hodnoty z dotazu MySQL

ještě další úprava :Od verze 5.2 pluck není již není podporován, má jen nové chování (stejné jako lists dříve – viz vedlejší poznámka níže):

upravit :Od verze 5.1 pluck je zastaralé, začněte tedy používat value místo toho:

DB::table('users')->where('username', $username)->value('groupName');    
// valid for L4 / L5.0 only
DB::table('users')->where('username', $username)->pluck('groupName');

to vrátí jednu hodnotu groupName pole prvního nalezeného řádku.

BOČNÍ POZNÁMKA ev. Komentář @TomasButeler :Jelikož Laravel nedodržuje rozumné verzování, někdy se vyskytnou takové případy. V době psaní této odpovědi jsme měli pluck metoda k získání SINGLE hodnoty z dotazu (Laravel 4.* &5.0).

Poté pomocí L5.1 pluck byl zastaralý a místo toho jsme dostali value způsob, jak jej nahradit.

Ale aby to bylo vtipné, pluck ve skutečnosti nikdy nebyl pryč. Místo toho dostal úplně nové chování a... zastaralé lists metoda.. (L5.2) – to bylo způsobeno nekonzistentností mezi metodami Query Builder a Collection (v 5.1 pluck pracoval na kolekci a dotazu jinak, to je důvod).



  1. Microsoft SQL Server – Připojte se ke mně na SQL Saturday Dallas

  2. Jak optimalizovat výkon COUNT(*) na InnoDB pomocí indexu

  3. Příklady příkazů JDBC – Vložit, Smazat, Aktualizovat, Vybrat záznam

  4. Mysql:Ořízněte všechna pole v databázi