1
まず最初に、私はフレームワークが初めてです。私は、CIデータベースオブジェクトを使用してトランスクリプトにしようとしているクエリを確認してください。CodeIgniter - EXISTサブクエリのバインド
$where = "(".$this->tbl.".invoiceNumber = '".substr($searchFor,3)."'
OR EXISTS (SELECT 1 FROM op_orders_products WHERE idProduct = ".(is_numeric(substr($searchFor,3)) ? substr($searchFor,3) : '-1')."
AND idOrder = ".$this->tbl.".id)
)";
個別のサブクエリを行う必要がありますか?それをすべて一つにしたいと思います。
これは私のやり方です。私は、変数がバインドされ、元のクエリのように文字列として渡されていないことを確認したい。
$this->db->group_start()
->where($this->tbl.".invoiceNumber", substr($searchFor, 3))
->or_group_start()
// I'm missing this EXISTS select subquery
->group_end()
->group_end()
ありがとうございました。
こんにちはVickel、私は変数を$ where節にバインドしたいと考えています。 – cabesd
https://www.codeigniter.com/userguide3/database/queries.html#query-bindingsを参照してください。 – Vickel