2016-06-21 4 views
1
$exmp = DB::table('cr_tblcomplaintregistration') 
      ->select(DB::raw('MAX(CAST(SUBSTRING(complaintRegNo,16,length(complaintRegNo))+1 AS int))'))->first(); 
     dd($exmp); 

я получаю:Магазин макс подстрока значение

{#337 ▼ 
    +"MAX(CAST(SUBSTRING(complaintRegNo,16,length(complaintRegNo))+1 AS int))": 51 
} 

Как я хранить только значение 51 в другой переменной ?.

ответ

1

Я предполагаю, что проблема заключается в имени переменной? Если да, то вы можете добавить SQL псевдоним:

->select(
DB::raw('MAX(CAST(SUBSTRING(complaintRegNo,16,length(complaintRegNo))+1 AS int)) AS maximum') 
) 

Если вы хотите $exmp быть значение столбца, просто добавьте эту собственность до конца вашей цепи:

$exmp = DB::table('cr_tblcomplaintregistration') 
->select(DB::raw('MAX(CAST(SUBSTRING(complaintRegNo,16,length(complaintRegNo))+1 AS int)) as maximum')) 
->first() 
->maximum; 

Конечно, вы можете хочу получить, если first() не имеет значения.

+0

Когда я делаю dd ($ exmp), я хочу, чтобы результат был всего лишь {15}, чтобы я мог увеличивать или изменять целочисленное значение. Есть ли другой способ, которым я могу это сделать? .. –

+0

Используя этот код, вы можете просто использовать '$ exmp-> maximum ++' для увеличения, или вы можете назначить '$ exmp' в моем обновленном примере. – Devon

+0

Хорошо, получил это сейчас .. Спасибо..Девон. –

Смежные вопросы