tp5中的where與whereor同時使用

1.

$data = db('table')->where(function($query) {
    $query->where('key1', value)->whereor('key1',value1);
})->where(['key2'=>value2,'key3'=>value3])->field('key4')->find();
生成的sql語句爲:

find key4 FROM `table` WHERE  (  `key1` = 'value' OR `key1` = 'value1' ) and  `key2` = 'value2' 
 and 'key3' = 'value3';
 

2

$data = db('table')->where(function($query) {
    $query->where('key1', value)->whereor('key1',value1);
})->whereor(function($query){
    $query->where(['key2'=>value2]->whereor(['key3'=>value3]))
})->field('key4')->find();


find 'key4' FROM `table` WHERE  (  `key1` = value OR `key1` = value1 ) 
OR (  `key2` = 'value2' OR `key3` = 'value3' )

3、

db('table')->where(array('a'=>1))->whereor(array('b'=>2))->select();

sql:

select * from table where a =1 or b = 2
 
 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章