标签: group-by

LINQ Group by 未按预期返回结果

我有一个动物课:

public class Animals
{
    public string Type { get; set; }
    public string Gender { get; set; }
    public int Amount { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

以及与不同动物相关的成本的类别成本:

public class Cost 
{
    public string AnimalType { get; set; }
    public int Cost { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我有一个不同类别的列表:

List<Animals> animalList = new List<Animals>()
{
     new Animals() { Type = "Wolf", Gender = "Female", Amount = 10 },
     new Animals() { Type = "Wolf", Gender = "Male", Amount = 20 }, …
Run Code Online (Sandbox Code Playgroud)

c# linq group-by

-1
推荐指数
1
解决办法
87
查看次数

MySQL获取订单总数和用户总数

我有一个名为orders的表,我存储有关用户订单的信息.

order_id    |   user_id |   amount
+++++++++++++++++++++++++++++++++++
1           |   1       |   100
2           |   1       |   200
3           |   2       |   200
4           |   3       |   100
5           |   3       |   100
6           |   4       |   500
Run Code Online (Sandbox Code Playgroud)

我想要的最终结果是,用户订单数量和这些订单的总价值.

所以在上面的情况下输出应该是这样的,

user_id     |   count   |   sum
+++++++++++++++++++++++++++++++++++
1           |   2       |   300
2           |   1       |   200
3           |   3       |   600
4           |   1       |   500
Run Code Online (Sandbox Code Playgroud)

mysql select group-by

-2
推荐指数
1
解决办法
627
查看次数

使用左外连接进行数据聚合

我试图通过分支,按周来提取一些具有事务计数的数据,这将在以后用于提供一些动态的.Net图表.

我有一个日历表,我有一个分支表,我有一个事务表.

这是我的数据库信息(仅包括相关列):

分支表:

ID (int), Branch (varchar)
Run Code Online (Sandbox Code Playgroud)

日历表:

Date (datetime), WeekOfYear(int)
Run Code Online (Sandbox Code Playgroud)

交易表:

Date (datetime), Branch (int), TransactionCount(int)
Run Code Online (Sandbox Code Playgroud)

所以,我想做类似以下的事情:

Select b.Branch, c.WeekOfYear, sum(TransactionCount)
FROM BranchTable b
LEFT OUTER JOIN TransactionTable t
    on t.Branch = b.ID
JOIN Calendar c
    on t.Date = c.Date
WHERE YEAR(c.Date) = @Year // (SP accepts this parameter)
GROUP BY b.Branch, c.WeekOfYear
Run Code Online (Sandbox Code Playgroud)

现在,当分支没有一周的任何事务时,这可以工作除外,在这种情况下,该分支在该周返回NO RECORD.我想要的是获得那个分支,那一周和"0"的总和.我尝试了isnull(sum(TransactionCount),0) - 但这也没有用.所以我会得到以下内容(为了说明目的而弥补金额):

+--------+------------+-----+
| Branch | WeekOfYear | Sum |
+--------+------------+-----+
|      1 |          1 |  25 …
Run Code Online (Sandbox Code Playgroud)

sql sql-server group-by outer-join

-2
推荐指数
1
解决办法
123
查看次数

通过R通过最大日期SQL按组选择观察

我的数据具有类似如下所示的结构。这是用R代码编写的,但是如果您只编写没有R东西的查询,那也很好。

我有多个小组,每个观察都有日期。我想从每个组中选择与该特定组的最大日期(最近日期)相对应的一行。没有重复的日期。

Df = data.frame(dates=c('2012-01-25','2012-08-20','2013-07-31','2013-05-30'), 
                group=c('a','a','b','b'), 
                value=c(1,2,3,4))

Library(sqldf)
(Desiredresults = Df[2:3,])
# 1 2012-08-20     a     2
# 2 2013-07-31     b     3
Run Code Online (Sandbox Code Playgroud)

sql group-by r

-2
推荐指数
1
解决办法
1186
查看次数

HAVING子句在这里实际发生了什么?

这是SQL Fiddle链接.

根据我的理解,GROUP BY将返回2个元组.

MODEL                        ITEM_TYPE                             PRICE
---------------------------- ------------------------------------- ----------
010-99-0101                  BACKPACK                              5329.1 
626-21-1500                  BACKPACK                              1485.86 
Run Code Online (Sandbox Code Playgroud)

平均价格的价值是,

AVG(PRICE)
----------
4858.014444 
Run Code Online (Sandbox Code Playgroud)

因此,以下查询应筛选出较小的价格值.

SELECT      item_type, MODEL, items.price
FROM        ITEMS
WHERE       MANUFACTURER_NAME = 'UWZ' 
AND         ITEM_TYPE = 'BACKPACK'
GROUP   BY item_type, items.price, MODEL
HAVING      ITEMS.PRICE > AVG(ITEMS.PRICE);
Run Code Online (Sandbox Code Playgroud)

所以,输出应该是:

MODEL                        ITEM_TYPE                             PRICE
---------------------------- ------------------------------------- ----------
010-99-0101                  BACKPACK                              5329.1 
Run Code Online (Sandbox Code Playgroud)

但是,实际上,以下是输出:

产量

no rows selected
Run Code Online (Sandbox Code Playgroud)

sql group-by having oracle11g having-clause

-2
推荐指数
1
解决办法
173
查看次数

DISTINCT与CAST和GROUP BY

我试图得到一个DISTINCT列,FeedbackDT但我似乎无法弄清楚为什么它不起作用..

SQL查询:

SELECT COUNT(FeedbackID) as FeedbackID,
       (SELECT DISTINCT CAST(feedbackDateTime AS DATE)) as FeedbackDT
FROM Feedback
WHERE feedBackDateTime <= GETDATE()
GROUP BY (feedbackDateTime)
Run Code Online (Sandbox Code Playgroud)

执行查询的结果

在此输入图像描述

我搜索高低,但无济于事..

感谢任何帮助,谢谢..

sql sql-server group-by distinct sql-server-express

-2
推荐指数
1
解决办法
1454
查看次数

如何按javascript数组中的列分组

我需要在javascript中对多维数组的元素进行分组.这是我的阵列:

        var data = []; 
        data.push(["ASIA", "CHINA", 1992, 31689222674, 5]); 
        data.push(["ASIA", "CHINA", 1997, 31327384072, 5]); 
        data.push(["ASIA", "INDIA", 1992, 27910388563, 5]); 
        data.push(["ASIA", "INDIA", 1993, 28669881069, 5]); 
        data.push(["ASIA", "INDIA", 1997, 29421629324, 5]); 
        data.push(["ASIA", "INDONESIA", 1992, 30990831267, 5]); 
        data.push(["ASIA", "INDONESIA", 1997, 31478506122, 5]); 
        data.push(["ASIA", "JAPAN", 1992, 29239959577, 5]); 
        data.push(["ASIA", "JAPAN", 1996, 29901316952, 5]); 
        data.push(["ASIA", "JAPAN", 1997, 29860665098, 5]); 
        data.push(["ASIA", "VIETNAM", 1992, 27229816811, 5]); 
        data.push(["ASIA", "VIETNAM", 1996, 27553006375, 5]); 
        data.push(["ASIA", "VIETNAM", 1997, 27240345298, 5]); 

        data.push(["AMERICA", "BRAZIL", 1992, 31689222674, 5]); 
        data.push(["AMERICA", "BRAZIL", 1993, 31207214888, 5]); …
Run Code Online (Sandbox Code Playgroud)

javascript jquery group-by

-3
推荐指数
1
解决办法
7499
查看次数

如何在Python中对元组列表进行分组

我有一个清单

A= [(1,0,10),(1,10,20), (1,20,30), (2,5,25), (2,5,50), (2,50,100)]
Run Code Online (Sandbox Code Playgroud)

我需要根据A中每个元组的第一个成员对其进行分组,然后是每个组的最小值和最大值.输出是这样的

B = [(1,0,30),(2,5,100)]
Run Code Online (Sandbox Code Playgroud)

python group-by list

-3
推荐指数
1
解决办法
1704
查看次数

查找对购买次数最多的客户做出最高销售额的员工

我在数据库作业中遇到这个问题并需要回答这个问题:

哪位员工对购买次数最多的客户的销售额最高?

这些是我的数据库表 在此输入图像描述

这些是我尝试编写这个查询

--select Customers.Firstname,Products.Name,Sales.Quantity from Customers
--inner join Sales
--on Customers.CustomerId=Sales.CustomerId
--inner join Products
--on Sales.productId=Products.ProductId
--where Products.Name like 'Mobile'


--Select Customers.CustomerId,max(COUNT(Customers.CustomerId)) As Customecount,Emploees.EmploeeId,max(COUNT(Emploees.EmploeeId))as EmploeeeCount from Emploees
--inner join Sales
--on Emploees.EmploeeId=Sales.EmploeeId
--inner join Customers
--on Customers.CustomerId=Sales.CustomerId
--group by Customers.CustomerId,Emploees.EmploeeId            ,Count(Sales.productId)as productCount,Count(Emploees.EmploeeId)as emploeeCount,Count(Customers.CustomerId)as customerCount 

select  * from
(select Distinct Customers.CustomerId,Sales.productId,COUNT(Sales.productId)as CountProduct from Customers
inner join Sales
on Customers.CustomerId=Sales.CustomerId
inner join Emploees
on Emploees.EmploeeId=Sales.EmploeeId
group by Sales.productId,Emploees.EmploeeId,Customers.CustomerId,Sales.productId) as Result
--gr 
Run Code Online (Sandbox Code Playgroud)

但这些都不起作用

请帮我写这个查询。

sql sql-server group-by aggregate-functions

-3
推荐指数
1
解决办法
2749
查看次数

对多个日期使用 sum 但只保留最新日期

我有一个名为Prospect的表,看起来像这样,我正在尝试对值求和,以便我只有 1 列表示 GEORGIA、ALABAMA、TEXAS,并且日期字段中的日期是最新的日期条目。

 Date            Sight        Blck   Knock  Purchased   Rate
 2020-02-13      GEORGIA       11      6      54.55     0.0385
 2020-02-13      GEORGIA        1      1      100       0.0035
 2020-02-14      GEORGIA        2      0       0        0.007
 2020-02-12      ALABAMA        2      0       0        0.007
 2020-02-15      ALABAMA        2      0       0        0.007
 2020-02-16      ALABAMA        2      1       50       0.007
 2020-04-08      TEXAS          2      0       0        0.007
 2020-04-18      TEXAS          2      0       0        0.007
 2020-05-10      TEXAS          1      0       0        0.005
Run Code Online (Sandbox Code Playgroud)

我想要一个看起来像这样的结果集

Date         Sight   Blck   Knock   Purchased   Rate
2020-02-14  GEORGIA   14     7      154.55      0.049
2020-02-16 …
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server group-by sum

-3
推荐指数
1
解决办法
178
查看次数

计算 2 个子查询,然后按日期分组 - mysql

我有这张桌子

附上图片

我想先做子查询,然后将它们按日期分组添加在一起

预期结果应该是这样的:

随附的

正在运行此查询

(
SELECT DATE_FORMAT(dd1.modified_datetime,'%Y-%m-%d') as date, (v1+v2) as value FROM
    (SELECT modified_datetime, Sum(data->"$.amount") as v1
        FROM transactions
        GROUP BY modified_datetime) as dd1 ,            
    (SELECT modified_datetime, MAX(data->"$.amount") as v2
        FROM transactions
        GROUP BY modified_datetime) as dd2

    GROUP BY dd1.modified_datetime, value
)
Run Code Online (Sandbox Code Playgroud)

并得到这个结果

随附的

感谢您的帮助

mysql sql database group-by subquery

-3
推荐指数
1
解决办法
160
查看次数