php - 在 CodeIgniter 中使用 MySQL 查询时出现语法错误
问题描述
我有一个 CodeIgniter 查询。
if($this->session->userdata['login_session']['access_role']==5){
$or_where="tbl_bankdata.b_filestatus=1 AND tbl_payment_invoice.payment_invoice IS NULL OR tbl_payment_invoice.payment_invoice = '' OR tbl_payment_invoice.payment_invoice =2 AND createby='".$this->session->userdata['login_session']['id']."'";
}
else{
$or_where="tbl_bankdata.b_filestatus=1 AND tbl_payment_invoice.payment_invoice IS NULL OR tbl_payment_invoice.payment_invoice = '' OR tbl_payment_invoice.payment_invoice =2";
}
$result = $this->db->select('*')
->from('tbl_lead')
->join('tbl_bankdata','tbl_lead.c_id=tbl_bankdata.lead_id','LEFT')
->join('tbl_bankname','tbl_bankname.b_id=tbl_bankdata.b_bankname')
->join('tbl_payment_invoice','tbl_bankname.b_id=tbl_payment_invoice.bank_id','LEFT')
->where($or_where)
->order_by('tbl_lead.date_of_created','DESC')
->get()
->result();
我有一个 MySQL 查询。(此 MySQL 查询将显示tbl_payment_invoice
表中所有用户的最后一条记录)
SELECT A.* FROM tbl_payment_invoice A INNER JOIN (SELECT bank_id,MAX(payment_invoice_date) AS maxdt FROM tbl_payment_invoice GROUP BY bank_id) B ON A.`bank_id`=B.`bank_id` AND A.`payment_invoice_date`=B.`maxdt`
现在我正在做的是,我必须在这一行中使用 MySQL 查询 ->join('tbl_payment_invoice','tbl_bankname.b_id=tbl_payment_invoice.bank_id','LEFT')
tbl_payment_invoice
或者我必须使用上面的 Codeigniter 查询显示上表中的所有记录以及表中所有用户的最后一条记录。
谁能帮我吗?
解决方案
推荐阅读
- c++ - 在 Windows 10 上安装 GMP 以在代码块中工作
- javascript - Nivo 响应式折线图仅响应变宽,不响应变窄
- sql-server - 防止脚本在未执行的块中生成错误?
- python-3.x - 如何按字典中键的值对字典进行排序?
- google-cloud-dataflow - 用于 org.json.JSONObject 的 Apache Beam 编码器
- javascript - Vue.js 事件监听器
- python - 如何将巨大的 python 列表存储为文件,然后在 python 中将文件作为列表读取?
- tableau-api - 无法在 Tableau 上从 Athena 获取数据
- javascript - 调用后如何将隐藏输入的值设置为函数的值?
- postgresql - 有没有办法合并这些 json 聚合?