sql >> Databasteknik >  >> RDS >> Mysql

Laravel:få ett enda värde från en MySQL-fråga

ännu en redigering :Från och med version 5.2 pluck är inte utfasad längre, den har precis fått nytt beteende (samma som lists tidigare - se sidoanteckning nedan):

redigera :Från och med version 5.1 pluck är utfasad, så börja använda value istället:

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

detta returnerar ett enda värde för groupName fältet för den första raden som hittades.

SIDO NOTERA reg. @TomasButeler kommentar :Eftersom Laravel inte följer vettig versionering, finns det ibland sådana här fall. När vi skrev detta svar hade vi pluck metod för att få ENKEL värde från frågan (Laravel 4.* &5.0).

Sedan, med L5.1 pluck har fasats ut och istället fick vi value metod för att ersätta den.

Men för att göra det roligt, pluck var faktiskt aldrig borta. Istället har det bara fått ett helt nytt beteende och... utfasade lists metod .. (L5.2) - som orsakades av inkonsekvensen mellan Query Builder och Collection metoder (i 5.1 pluck fungerade annorlunda på insamlingen och frågan, det är anledningen).



  1. Anslutning till SQL Server fungerar ibland

  2. rake avbruten! oinitierad konstant Mysql2

  3. ORA-22905 - när du frågar en tabelltyp med en select-sats

  4. Är det möjligt att släppa alla begränsningar för främmande nyckel på en tabell på en gång i mySQL 5?