如何从MySQL中选择sum(max remaining(x y z))来捕获总和(1200 1300 1400)?id | user | remain-----------------1 | x | 1000----------------2 | x | 1200----------------3 | y | 1100-----------...

如何从MySQL中选择sum(max remaining(x y z))来捕获总和(1200 1300 1400)?
id | user | remain
-----------------
1 | x | 1000
----------------
2 | x | 1200
----------------
3 | y | 1100
----------------
4 | y | 1300
----------------
5 | z | 1200
----------------
5 | z | 1400
----------------
using (SqlConnection cn = new SqlConnection(Class1.x))
{
cn.Open();
string cm1 = "select sum(max remain(all users)) as 'total' from item_new_company";
using (SqlCommand cmd = new SqlCommand(cm1, cn))
{
using (SqlDataReader dr = cmd.ExecuteReader())
{ dr.Read(); tot5 = dr["total"].ToString(); }
}
}
解决方法:
像这样:
SELECT SUM(MaxRemain) TotalOfMaxRemains
FROM
(
SELECT MAX(remain) AS MaxRemain
FROM item_new_company
GROUP BY user
) AS t;
SQL Fiddle Demo
结果:
| TOTALOFMAXREMAINS |
---------------------
| 3900 |
子查询:
SELECT MAX(remain) AS MaxRemain
FROM item_new_company
GROUP BY user
使用GROUP BY用户和MAX(保留),将为每个用户提供剩余的最大值,然后在外部查询中,SUM将为您提供总计.
更新
对于SQL Server,上一个查询应该可以正常工作,但还有另一种方法:
WITH CTE AS
(
SELECT *, ROW_NUMBER() OVER(PARTITION BY [user]
ORDER BY id DESC) AS rownum
FROM item_new_company
)
SELECT SUM(remain) AS Total
FROM CTE
WHERE rownum = 1;
SQL Fiddle Demo
沃梦达教程
本文标题为:c# – 如何从MySQL中选择sum(max remaining(x y z))来捕获总和(1200 1300 1400)


基础教程推荐
猜你喜欢
- 详解WPF的InkCanvas选择模式 2023-04-10
- C#实现递归调用的Lambda表达式 2023-06-15
- C#实现倒计时关闭提示框功能 2023-01-27
- SQLServer批量插入数据的三种方式及性能对比 2023-05-11
- 在WinForm应用程序中快速实现多语言的处理的方法 2022-12-26
- C#实现加密与解密详解 2023-06-09
- c# – Converter无法将’system.datetime’类型的值转换为在windows phone 8.1 Datepicker中键入’datetime’ 2023-09-19
- c# – 对Sql Server中的索引感到困惑 2023-11-22
- C#使用AngleSharp库解析html文档 2023-06-14
- Unity游戏开发中的桥接模式 2023-07-19