php - 在我的 sql codeigniter 中互相添加减去数据库字段

标签 php mysql codeigniter

<分区>

这是我的问题

function getInventoryAvailableQty($product_id,$warehouse_id,$location_id) {

   $this->db->select_sum('quantity','addqty');
   $this->db->select_sum('total_cost','addcost');
   if($warehouse_id)
   $this->db->where('warehouse_id',$warehouse_id);
   if($location_id)
   $this->db->where('location_id',$location_id);
   if($product_id)
   $this->db->where('product_id',$product_id);
   $this->db->where('inventory_type','add');
   $query = $this->db->get($this->tablename);
   $resultAdd = $query->row();

   $this->db->select_sum('quantity','removeqty');
   $this->db->select_sum('total_cost','removecost');
   if($warehouse_id)
   $this->db->where('warehouse_id',$warehouse_id);
   if($location_id)
   $this->db->where('location_id',$location_id);
   if($product_id)
   $this->db->where('product_id',$product_id);
   $this->db->where('inventory_type','remove');
   $query1 = $this->db->get($this->tablename);
   $resultRemove = $query1->row();

   $data['imeicost'] = $resultAdd->addcost-$resultRemove->removecost;
   $data['availableQty'] = $resultAdd->addqty-$resultRemove->removeqty;
   return $data;

}

我想在单个查询中执行此操作。因为我想为此添加分页我该怎么做请建议

最佳答案

不确定您是否可以使用 CI 事件记录来执行此操作,但您可以编写 SQL 查询并使用 $this->db->query($query) 运行它

您的查询可以是这样的:

SELECT
    *
FROM
    (
        SELECT
            SUM(quantity) AS addqty_add,
            SUM(total_cost) AS addcost_add
        FROM
            tbName
        WHERE
            warehouse_id = 2
        AND inventory_type = 'add'
    ) AS tb1,
    (
        SELECT
            SUM(quantity) AS addqty_remove,
            SUM(total_cost) AS addcost_remove
        FROM
            tbName
        WHERE
            warehouse_id = 2
        AND inventory_type = 'remove'
    ) AS tb2

关于php - 在我的 sql codeigniter 中互相添加减去数据库字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30318828/

相关文章:

php - 使用 CodeIgniter 事件记录类时限制 SQL 连接

php - Joomla后端禁用我的组件中的错误报告

php - PHP-MySQL 或 MySQLi 中哪个最快?

php - 将购物车数据插入数据库

php - dompdf 不显示由 PHP 文件生成的图像

php - 分组查询结果后分组 (Codeigniter)

php - 使用curl调用时Azure网站使用错误的SSL证书(错误51)

php - 使用 SimpleXML 解析 .opf 文件

Java PHP FastCGI SocketException : Connection Reset on reading data

php - Solr全文搜索没有索引?