PHP

[라라벨]쿼리문 and와 or 혼용해서 쓰기

에스크리토 2024. 8. 1. 15:04
반응형

DB::where('multi',$multi)
                        ->where('status',1)
                        ->Where(function($query) {
                            $query->where('cnt', 0)
                                  ->orwhere('cnt', 1);
                        })->orderBy('bid','desc');

 

위 쿼리를 쿼리문으로 바꾸면

 

SELECT * FROM board where status=1 and multi='free' and (cnt=0 or cnt=1) order by bid desc;

 

이렇게 된다...

 

또는 

 

DB::where('multi',$multi)
                        ->where('status',1)
                        ->wherein('cnt', [0,1])->orderBy('bid','desc');

 

이런식으로 in 문으로 이용할 수도 있다.

 

SELECT * FROM board where status=1 and multi='free' and cnt in (0,1) order by bid desc;

 

편한걸 쓰면 된다.

반응형