我有一个动物课:
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) 我有一个名为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) 我试图通过分支,按周来提取一些具有事务计数的数据,这将在以后用于提供一些动态的.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) 我的数据具有类似如下所示的结构。这是用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) 根据我的理解,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) 我试图得到一个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)
执行查询的结果
我搜索高低,但无济于事..
感谢任何帮助,谢谢..
我需要在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) 我有一个清单
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) 我在数据库作业中遇到这个问题并需要回答这个问题:
哪位员工对购买次数最多的客户的销售额最高?
这些是我尝试编写这个查询
--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)
但这些都不起作用
请帮我写这个查询。
我有一个名为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) 我有这张桌子

我想先做子查询,然后将它们按日期分组添加在一起
预期结果应该是这样的:

正在运行此查询
(
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)
并得到这个结果

感谢您的帮助