mysql:分组并获取最新记录

罗纳克帕特尔

我有这样的查询:

SELECT cus_id, ROUND(SUM(credit_in)-SUM(credit_out), 2) as balance, date_added
FROM `customer_wallet`
GROUP BY cus_id

它将获得客户的余额(唯一的客户)。如果余额为负,我想修改此值,然后它就会到来,并且我想要最新日期(date_added)。

我尝试这样做:

SELECT cus_id, ROUND(SUM(credit_in)-SUM(credit_out), 2) as balance, date_added
FROM `customer_wallet`
GROUP BY cus_id
ORDER BY date_added

但是,它会在得到所有结果后给出排序的记录。我想要个人客户的最新记录。

让我知道您是否需要更多信息或架构。谢谢。

我也可以检查带有负余额的记录php但是,如果我可以在查询本身中做到这一点,那就太好了。

黏液

默认情况下,MYSQL不会强制您将未包含在聚合函数中的所有列都放在该Group By子句中。这可能会返回奇怪的结果。

请尝试以下查询。

  SELECT cus_id, 
         ROUND(SUM(credit_in)-SUM(credit_out), 2) as balance, 
         max(date_added) latest_transaction_date
    FROM `customer_wallet`
GROUP BY cus_id
  HAVING ROUND(SUM(credit_in)-SUM(credit_out), 2) < 0

如果您想了解有关Group ByMySQL的更多信息,可以查看此博客文章:Debunking GROUP BY myths它已经很老了,但是如果您是MySQL的新手,它仍然很有趣。

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

MySql:获取最新记录,然后按字母顺序分组

来自分类Dev

MySQL分组并获取最新行

来自分类Dev

JPQL / SQL获取按列分组的最新记录

来自分类Dev

使用分组依据从表中获取最新记录

来自分类Dev

SQL查询可通过多个分组获取最新记录

来自分类Dev

按日期和按 ID 分组获取表的最新记录

来自分类Dev

MySQL获取每个条件的最新记录

来自分类Dev

仅获取MySQL中JOIN的最新记录

来自分类Dev

获得分组的最新记录

来自分类Dev

获取最新记录

来自分类Dev

如何获取mysql中每一天的最新记录?

来自分类Dev

仅获取mysql中每个记录的最新数据

来自分类Dev

从mysql数据库多个表中获取最新记录

来自分类Dev

对于每条记录仅获取mysql中的最新数据

来自分类Dev

从mysql数据库多个表中获取最新记录

来自分类Dev

mysql按升序获取最新日期记录

来自分类Dev

MYSQL:最新记录的总和

来自分类Dev

MYSQL:最新记录的总和

来自分类Dev

如何按列分组并获取最新鲜的n条记录的平均值?

来自分类Dev

MySQL的多条记录从分组

来自分类Dev

想要返回结果分组的最新记录

来自分类Dev

PostgreSQL - 加入最新记录以按结果分组

来自分类Dev

获取特定类型的最新记录

来自分类Dev

获取用户的最新记录

来自分类Dev

sql记录获取最新记录-SQL Server

来自分类Dev

获取记录组中的最新记录

来自分类Dev

如何分组通过分组上的最新记录

来自分类Dev

Tinkerpop Gremlin按键分组并获取最新信息

来自分类Dev

获取按属性值分组的最新行