2

次のことが可能です: (条件 1 AND 条件 2) OR (条件 3 AND 条件 4) in codigniter?

私は試します:

$this->db->where(condition1 - condition2);
$this->db->or_where(condition3 - condition4);

しかし、これは: (条件1 AND 条件2) OR (条件3 OR 条件4)

4

6 に答える 6

5

あなたの場所にそれを書くだけです

$this->db->where("(condition1 AND condition2) OR (condition3 AND condition4)");

これでもデータはエスケープされるため、or_where メソッドをだます必要はありません。

于 2012-10-19T19:45:54.993 に答える
3

はい、可能です。便宜上、使用したい条件を1つの変数に入れます

$where ="(condition 1 AND condition2) OR (condition3 AND condition4)";
$this->db->where($where);
于 2013-08-30T11:12:37.623 に答える
1
$first="(COND1 AND COND2)";
$second= "(COND3 AND COND4)";

$query=$this->db->where($first)->or_where($second)->get();
于 2013-03-24T10:18:50.687 に答える
1

このように試してみました:::::?

$this->db->where(COND1);
$this->db->where(COND2);
$this->db->or_where(COND3); 
$this->db->where(COND4); 
于 2013-03-07T07:24:48.867 に答える
0

次のような通常のクエリを使用するだけです。

$query="SELECT *
FROM table1 INNER JOIN table2 on table1.col=table2.col
WHERE (table1.whatever=? AND table1.hello=?) OR (table2.foo=? AND table2.pizza=?)
LIMIT 1";
$params=array();
$params[]='whatever';
$params[]='world';
$params[]='bar';
$params[]='cheese';


$result=$this->db->query($query,$params);
$result=$result->result_array();
print_r($result);
于 2013-03-21T23:15:51.690 に答える