【问题标题】:How to use CONCAT in codeigniter datatable query?如何在codeigniter数据表查询中使用CONCAT?
【发布时间】:2015-11-30 15:55:00
【问题描述】:

我正在使用 codeigniter 框架,在此我使用数据表来生成值以查看文件。我需要这个查询的 CONCAT 选项。但是当我使用它时显示 500 内部服务器错误。下面我给出了查询。

 $this->load->library('datatables');

 $this->datatables
    ->select("sales.id as sid, CONCAT(sales.id, ' ',sales.export_status) as chid, date, reference_no, customer_name, note, delete_status, table_name, count, inv_total, inv_discount, total_tax2, total, internal_note");
 $this->datatables->join('order_table', 'order_table.id=sales.tableid', 'left');
 $this->datatables->from('sales'); 

我不知道是什么问题,我参考了很多链接,但我无法得到正确的解决方案。请指导我。提前致谢。

【问题讨论】:

  • 500 内部服务器错误将来自您的脚本,因为重定向
  • 但是当我删除查询中的 CONCAT 选项意味着它工作正常。
  • 在您的查询中最后添加, FALSE); 并尝试
  • 我的 export_status 处于销售状态。我为别名添加的孩子。
  • 是的,但我在 order_table 中没有 chid。

标签: php mysql codeigniter datatables concat


【解决方案1】:

$this->db->select() 接受可选的第二个参数。如果您将其设置为 FALSE,CodeIgniter 将不会尝试使用反引号保护您的字段或表名。如果您需要复合选择语句,这很有用。

  $this->datatables->select("sales.id as sid, CONCAT(sales.id, ' ',sales.export_status) as chid, date, reference_no, customer_name, note, delete_status, table_name, count, inv_total, inv_discount, total_tax2, total, internal_note",FALSE);

【讨论】:

  • 编辑 $this->datatables->select();缺少选择拼写。
猜你喜欢
  • 2018-03-14
  • 2013-11-03
  • 1970-01-01
  • 2015-07-20
  • 1970-01-01
  • 1970-01-01
  • 2013-11-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多