插入查询后更新状态

jogesh_pi
$stmt = "insert into {CI}payment_logs (customer_id, invoice_id, invoice_total_amount, invoice_paid_amount, customer_paid_amount, invoice_payment_on ) "
                . "values( ?, ?, ?, ?, ?, NOW() )";
$this->db->query( $stmt, array( $Customer_Id, $Invoice_Id, $Invoice_Total_Amount, $Deducted_Amount, $Paid_By_Cust ) );        
$Log_Id = $this->db->insert_id(); // Returns Last Insert ID

根据我的需要,这是正常工作的方法,但是我必须在特定条件下更新同一表中每一行的状态。看一下照片,

插入查询

这是通过上面的查询插入的数据。如您所见,invoice_total_amount是总金额,但是此金额在第三行数据中完成了。我必须更新invoice_status字段,因为paid高度标记的总和等于之后invoice_total_amount,在其余字段中,我必须将状态更新为partial我试图将状态更新为添加触发器,但未成功。

然后,我尝试使用此命令使用PHP。

update {CI}payment_logs 
    set invoice_status = IF( invoice_total_amount = sum(invoices_paid_amount), 'paid', 'partial' ) 
where log_id = ?

但是我没有得到invoices_paid_amountinvoice_id =的总和5,我在IF条件下尝试了子查询,但这对我的查询无效。

请帮助我使用单一查询或触发器解决方案来解决它。

巴尔玛

与计算总和的子查询联接。

UPDATE {CI}payment_logs l1
JOIN (SELECT invoice_id, SUM(invoices_paid_amount) total
      FROM {CI}payment_logs
      GROUP BY invoice_id) l2
ON l1.invoice_id = l2.invoice_id
SET invoice_status = IF(invoice_total_amount = total, 'paid', 'partial')
WHERE log_id = ?

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在SQL Server更新查询后插入

来自分类Dev

在MySQL中插入和更新后,如何创建触发器来更改状态?

来自分类Dev

执行多个Apollo查询和变异后如何更新本地状态?

来自分类Dev

插入或更新或删除后刷新datagridview而不选择新的sql查询

来自分类Dev

插入后更新MySQL表

来自分类Dev

插入nodejs后更新mysql

来自分类Dev

redux状态更新后,componentWillReceiveProps状态与呈现状态不同

来自分类Dev

更新状态,更新后的状态是从API返回的记录

来自分类Dev

减速器更新状态后状态未更新

来自分类Dev

查询后更新嵌套值

来自分类Dev

SELECT查询更新后失败

来自分类Dev

解析查询然后解析后状态更改

来自分类Dev

Elasticsearch插入后查询的奇怪行为

来自分类Dev

在“ X”时间后动态更新“状态”列

来自分类Dev

2秒后如何更新状态?

来自分类Dev

useEffect更新后的本地状态行为

来自分类Dev

搜索对象后反应组件的更新状态

来自分类Dev

父状态更改后,组件不会更新

来自分类Dev

Redux状态更新后如何采取行动?

来自分类Dev

恢复操作后获取更新状态

来自分类Dev

状态更改后更新Fragment UI的方法

来自分类Dev

状态更改后更新 div 渲染

来自分类Dev

状态更改后子组件未更新

来自分类Dev

查询更新表列插入当前ID?

来自分类Dev

使用.htaccess插入或更新查询参数

来自分类Dev

查询更新中插入当前ID的表列?

来自分类Dev

PHP 循环查询以执行条件插入或更新

来自分类Dev

插入后触发更新表列吗?

来自分类Dev

插入后触发,更新相关模型Postgresql