2017-02-03 3 views
1

Может, кто-нибудь может мне помочь?Я хочу взять первый символ использования LEFT на laravel `

Это мой контроллер.

$takegolongan = Pekerjaan::select ('LEFT('golongan_jabatan', 1)')->where('cno', '00001222')->get(); 

echo $takegolongan; 

Это данные, которые я хочу взять:

enter image description here

вывод на экран (ошибки):

enter image description here

+1

Просто избежать апостроф (для жизни меня я не могу вспомнить, что ' '' называется на английском языке.): '$ Takegolongan = Pekerjaan :: выберите (' ЛЕВЫЙ (\ 'golongan_jabatan \ ', 1)') -> где ('cno', '00001222') -> get(); '. Кроме этого ваш запрос кажется правильным. – Andrew

+0

То же самое. Побег апострофа. [См. Здесь] (http://stackoverflow.com/questions/7999148/escaping-quotation-marks-in-php). И получить достойную IDE, он предупредит вас о таких небольших проблемах. – Andrew

ответ

1

Вы должны добавить одиночную кавычку в двойную кавычку или использовать обратную косую черту, я могу видеть только вопрос о котировках. Как:

$takegolongan = Pekerjaan::select ("LEFT('golongan_jabatan', 1)")->where('cno', '00001222')->get(); 
+0

Намного легче читать, чем экранированная версия imho , – RichardAtHome

1

Вы можете использовать DB :: сырец():

use DB; 

$takegolongan = Pekerjaan::select(DB::raw('LEFT(`golongan_jabatan`, 1)')) 
    ->where('cno', '00001222') 
    ->get(); 
+0

спасибо, я пробовал, но все еще ошибка. :( –

+0

Вы изменили запрос @ Jin.C, чтобы он больше не работал. Вы изменили разделители строк apostrophe вокруг golongan_jabatan для разделителей обратных ссылок, которые используются для обозначения имени схемы. – RichardAtHome

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