2014-12-29 4 views
0

나는 아주 간단한 데이터베이스 구조와 쿼리를 가지고 있습니다. %와 같이 %로 일부 행을 가져오고 싶지만 아무것도 얻지 못합니다. 내가 위해서 var_dump ($의 kslr)를 쓸 때laravel eloquent like가 작동하지 않습니다.

$kslr=DB::table('kisiler')->select('*')->where('dogumgunu','%LIKE%',"29-12")->get(); 

이 나에게 하늘의 배열을 제공합니다 여기 내 쿼리입니다.

나는 kisiler 테이블에 세 사람이 "dogumgunu"열은 "29-12-1987", "29-12-1986" 와 "24-12-1991

그래서 쿼리를. 나에게이 2를 반환하지만 길을 내 테이블에서 "dogumgunu"열이 UTF-8 설정 whichh는 "텍스트"구조에 의해 아무것도 를 얻을 수 없습니다.

감사 시간 내 주셔서.

답변

2

할 일을 연산자에 와일드 카드를 넣지 말고 검색된 단어에 넣으십시오!

$kslr = DB::table('kisiler') 
     ->select('*') 
     ->where('dogumgunu','LIKE',"%29-12%") 
     ->get(); 
+0

덕분에 :) –

0
where('dogumgunu','%LIKE%',"29-12") 

where('dogumgunu','LIKE',"%29-12%") 

LIKE해야한다는 운영자 29-12%이 용어

0

당신이 유창 통해 필요한 쿼리를 생성 할 수없는 경우에게 있습니다

%입니다 인터페이스를 사용하십시오. 어디서든REGEXP :

$kslr=DB::table('kisiler') 
    ->select('*') 
    ->whereRaw("dogumgunu REGEXP '^[0-9]-[0-9]'") 
    ->get(); 

예;

$kslr=DB::table('kisiler') 
    ->select('*') 
    ->whereRaw("dogumgunu REGEXP '^29-12'") 
    ->get(); 
+0

감사합니다 :) 당신은 터키 사람도 있습니다 :) –

+0

예, 저는 터키에 살고 있습니다. –